Raspbian Package Auto-Building

Build log for groonga (7.0.9-1) on armhf

groonga7.0.9-1armhf → 2017-12-10 12:22:42

sbuild (Debian sbuild) 0.72.0 (25 Oct 2016) on mb-lxc-01

+==============================================================================+
| groonga 7.0.9-1 (armhf)                      Sat, 09 Dec 2017 10:35:23 +0000 |
+==============================================================================+

Package: groonga
Version: 7.0.9-1
Source Version: 7.0.9-1
Distribution: buster-staging
Machine Architecture: armhf
Host Architecture: armhf
Build Architecture: armhf

I: NOTICE: Log filtering will replace 'var/lib/schroot/mount/buster-staging-armhf-sbuild-655676e1-ab19-4efc-b228-83917c133134' with '<<CHROOT>>'

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

Get:1 http://172.17.0.1/private buster-staging InRelease [11.3 kB]
Get:2 http://172.17.0.1/private buster-staging/main Sources [10.4 MB]
Get:3 http://172.17.0.1/private buster-staging/main armhf Packages [12.2 MB]
Fetched 22.7 MB in 8s (2681 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.1 MB of source archives.
Get:1 http://172.17.0.1/private buster-staging/main groonga 7.0.9-1 (dsc) [2824 B]
Get:2 http://172.17.0.1/private buster-staging/main groonga 7.0.9-1 (tar) [14.0 MB]
Get:3 http://172.17.0.1/private buster-staging/main groonga 7.0.9-1 (diff) [95.8 kB]
Fetched 14.1 MB in 1s (8181 kB/s)
Download complete and in download only mode
I: NOTICE: Log filtering will replace 'build/groonga-EDRRKV/groonga-7.0.9' with '<<PKGBUILDDIR>>'
I: NOTICE: Log filtering will replace 'build/groonga-EDRRKV' 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-CFhFwv/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-CFhFwv/gpg/pubring.kbx' created
gpg: /<<BUILDDIR>>/resolver-CFhFwv/gpg/trustdb.gpg: trustdb created
gpg: key 37145E60F90AF620: 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 37145E60F90AF620: "Sbuild Signer (Sbuild Build Dependency Archive Key) <buildd-tools-devel@lists.alioth.debian.org>" not changed
gpg: key 37145E60F90AF620: 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-CFhFwv/apt_archive ./ InRelease
Get:2 copy:/<<BUILDDIR>>/resolver-CFhFwv/apt_archive ./ Release [957 B]
Get:3 copy:/<<BUILDDIR>>/resolver-CFhFwv/apt_archive ./ Release.gpg [370 B]
Get:4 copy:/<<BUILDDIR>>/resolver-CFhFwv/apt_archive ./ Sources [349 B]
Get:5 copy:/<<BUILDDIR>>/resolver-CFhFwv/apt_archive ./ Packages [431 B]
Fetched 2107 B in 0s (6280 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:
  ca-certificates e2fsprogs-l10n libsasl2-modules libssl1.1 openssl
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 23 not upgraded.
Need to get 852 B of archives.
After this operation, 0 B of additional disk space will be used.
Get:1 copy:/<<BUILDDIR>>/resolver-CFhFwv/apt_archive ./ sbuild-build-depends-core-dummy 0.invalid.0 [852 B]
debconf: delaying package configuration, since apt-utils is not installed
Fetched 852 B in 0s (32.6 kB/s)
Selecting previously unselected package sbuild-build-depends-core-dummy.
(Reading database ... 15134 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-CFhFwv/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-CFhFwv/apt_archive ./ InRelease
Get:2 copy:/<<BUILDDIR>>/resolver-CFhFwv/apt_archive ./ Release [963 B]
Get:3 copy:/<<BUILDDIR>>/resolver-CFhFwv/apt_archive ./ Release.gpg [370 B]
Get:4 copy:/<<BUILDDIR>>/resolver-CFhFwv/apt_archive ./ Sources [568 B]
Get:5 copy:/<<BUILDDIR>>/resolver-CFhFwv/apt_archive ./ Packages [643 B]
Fetched 2544 B in 0s (7391 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:
  ca-certificates e2fsprogs-l10n libsasl2-modules openssl
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.1-6
  libevent-core-2.1-6 libevent-dev libevent-extra-2.1-6 libevent-openssl-2.1-6
  libevent-pthreads-2.1-6 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 libstemmer-dev libstemmer0d libtimedate-perl libtool 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 dwz gettext-doc libasprintf-dev libgettextpo-dev groff
  libmsgpack-doc libtool-doc gfortran | fortran95-compiler gcj-jdk m4-doc less
  www-browser apparmor libmail-box-perl
Recommended packages:
  curl | wget | lynx-cur libarchive-cpio-perl libglib2.0-data shared-mime-info
  xdg-user-dirs libssl-doc libltdl-dev 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.1-6
  libevent-core-2.1-6 libevent-dev libevent-extra-2.1-6 libevent-openssl-2.1-6
  libevent-pthreads-2.1-6 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 libstemmer-dev libstemmer0d libtimedate-perl libtool libxml2
  libzmq3-dev libzmq5 libzstd-dev libzstd1 m4 man-db pkg-config po-debconf
  sbuild-build-depends-groonga-dummy zlib1g-dev
0 upgraded, 58 newly installed, 0 to remove and 23 not upgraded.
Need to get 24.5 MB of archives.
After this operation, 89.9 MB of additional disk space will be used.
Get:1 copy:/<<BUILDDIR>>/resolver-CFhFwv/apt_archive ./ sbuild-build-depends-groonga-dummy 0.invalid.0 [928 B]
Get:2 http://172.17.0.1/private buster-staging/main armhf groff-base armhf 1.22.3-9 [1005 kB]
Get:3 http://172.17.0.1/private buster-staging/main armhf libbsd0 armhf 0.8.6-3 [95.9 kB]
Get:4 http://172.17.0.1/private buster-staging/main armhf bsdmainutils armhf 9.0.14 [178 kB]
Get:5 http://172.17.0.1/private buster-staging/main armhf libpipeline1 armhf 1.5.0-1 [24.6 kB]
Get:6 http://172.17.0.1/private buster-staging/main armhf man-db armhf 2.7.6.1-4 [1012 kB]
Get:7 http://172.17.0.1/private buster-staging/main armhf libstemmer0d armhf 0+svn585-1 [53.5 kB]
Get:8 http://172.17.0.1/private buster-staging/main armhf libmagic-mgc armhf 1:5.32-1 [225 kB]
Get:9 http://172.17.0.1/private buster-staging/main armhf libmagic1 armhf 1:5.32-1 [105 kB]
Get:10 http://172.17.0.1/private buster-staging/main armhf file armhf 1:5.32-1 [63.7 kB]
Get:11 http://172.17.0.1/private buster-staging/main armhf gettext-base armhf 0.19.8.1-4 [117 kB]
Get:12 http://172.17.0.1/private buster-staging/main armhf libevent-2.1-6 armhf 2.1.8-stable-4 [156 kB]
Get:13 http://172.17.0.1/private buster-staging/main armhf libicu57 armhf 57.1-8 [7411 kB]
Get:14 http://172.17.0.1/private buster-staging/main armhf libxml2 armhf 2.9.4+dfsg1-5.1 [608 kB]
Get:15 http://172.17.0.1/private buster-staging/main armhf libsigsegv2 armhf 2.11-1 [29.3 kB]
Get:16 http://172.17.0.1/private buster-staging/main armhf m4 armhf 1.4.18-1 [185 kB]
Get:17 http://172.17.0.1/private buster-staging/main armhf autoconf all 2.69-11 [341 kB]
Get:18 http://172.17.0.1/private buster-staging/main armhf autotools-dev all 20161112.1+nmu1 [74.2 kB]
Get:19 http://172.17.0.1/private buster-staging/main armhf automake all 1:1.15.1-3 [736 kB]
Get:20 http://172.17.0.1/private buster-staging/main armhf autopoint all 0.19.8.1-4 [434 kB]
Get:21 http://172.17.0.1/private buster-staging/main armhf libtool all 2.4.6-2 [545 kB]
Get:22 http://172.17.0.1/private buster-staging/main armhf dh-autoreconf all 15 [16.2 kB]
Get:23 http://172.17.0.1/private buster-staging/main armhf libarchive-zip-perl all 1.59-1 [95.5 kB]
Get:24 http://172.17.0.1/private buster-staging/main armhf libfile-stripnondeterminism-perl all 0.040-1 [18.4 kB]
Get:25 http://172.17.0.1/private buster-staging/main armhf libtimedate-perl all 2.3000-2 [42.2 kB]
Get:26 http://172.17.0.1/private buster-staging/main armhf dh-strip-nondeterminism all 0.040-1 [11.8 kB]
Get:27 http://172.17.0.1/private buster-staging/main armhf libglib2.0-0 armhf 2.54.1-1 [2653 kB]
Get:28 http://172.17.0.1/private buster-staging/main armhf libcroco3 armhf 0.6.12-1 [132 kB]
Get:29 http://172.17.0.1/private buster-staging/main armhf gettext armhf 0.19.8.1-4 [1218 kB]
Get:30 http://172.17.0.1/private buster-staging/main armhf intltool-debian all 0.35.0+20060710.4 [26.3 kB]
Get:31 http://172.17.0.1/private buster-staging/main armhf po-debconf all 1.0.20 [247 kB]
Get:32 http://172.17.0.1/private buster-staging/main armhf debhelper all 10.10.9 [975 kB]
Get:33 http://172.17.0.1/private buster-staging/main armhf libevent-core-2.1-6 armhf 2.1.8-stable-4 [117 kB]
Get:34 http://172.17.0.1/private buster-staging/main armhf libevent-extra-2.1-6 armhf 2.1.8-stable-4 [90.7 kB]
Get:35 http://172.17.0.1/private buster-staging/main armhf libevent-pthreads-2.1-6 armhf 2.1.8-stable-4 [47.6 kB]
Get:36 http://172.17.0.1/private buster-staging/main armhf libevent-openssl-2.1-6 armhf 2.1.8-stable-4 [52.3 kB]
Get:37 http://172.17.0.1/private buster-staging/main armhf libevent-dev armhf 2.1.8-stable-4 [276 kB]
Get:38 http://172.17.0.1/private buster-staging/main armhf libjemalloc1 armhf 3.6.0-11 [83.1 kB]
Get:39 http://172.17.0.1/private buster-staging/main armhf libjemalloc-dev armhf 3.6.0-11 [176 kB]
Get:40 http://172.17.0.1/private buster-staging/main armhf libmecab2 armhf 0.996-3.1 [218 kB]
Get:41 http://172.17.0.1/private buster-staging/main armhf libmecab-dev armhf 0.996-3.1 [271 kB]
Get:42 http://172.17.0.1/private buster-staging/main armhf libmsgpackc2 armhf 2.1.5-1 [18.7 kB]
Get:43 http://172.17.0.1/private buster-staging/main armhf libmsgpack-dev armhf 2.1.5-1 [226 kB]
Get:44 http://172.17.0.1/private buster-staging/main armhf libpcre16-3 armhf 2:8.39-4 [235 kB]
Get:45 http://172.17.0.1/private buster-staging/main armhf libpcre32-3 armhf 2:8.39-4 [227 kB]
Get:46 http://172.17.0.1/private buster-staging/main armhf libpcrecpp0v5 armhf 2:8.39-4 [149 kB]
Get:47 http://172.17.0.1/private buster-staging/main armhf libpcre3-dev armhf 2:8.39-4 [565 kB]
Get:48 http://172.17.0.1/private buster-staging/main armhf libpgm-5.2-0 armhf 5.2.122~dfsg-2 [153 kB]
Get:49 http://172.17.0.1/private buster-staging/main armhf libsodium18 armhf 1.0.14-1 [153 kB]
Get:50 http://172.17.0.1/private buster-staging/main armhf libssl-dev armhf 1.1.0g-2 [1371 kB]
Get:51 http://172.17.0.1/private buster-staging/main armhf libstemmer-dev armhf 0+svn585-1 [62.2 kB]
Get:52 http://172.17.0.1/private buster-staging/main armhf libzmq5 armhf 4.2.2-1 [190 kB]
Get:53 http://172.17.0.1/private buster-staging/main armhf libzmq3-dev armhf 4.2.2-1 [364 kB]
Get:54 http://172.17.0.1/private buster-staging/main armhf libzstd1 armhf 1.3.1+dfsg-2 [124 kB]
Get:55 http://172.17.0.1/private buster-staging/main armhf libzstd-dev armhf 1.3.1+dfsg-2 [152 kB]
Get:56 http://172.17.0.1/private buster-staging/main armhf pkg-config armhf 0.29-4 [59.2 kB]
Get:57 http://172.17.0.1/private buster-staging/main armhf zlib1g-dev armhf 1:1.2.8.dfsg-5 [198 kB]
Get:58 http://172.17.0.1/private buster-staging/main armhf liblz4-dev armhf 0.0~r131-2 [39.0 kB]
debconf: delaying package configuration, since apt-utils is not installed
Fetched 24.5 MB in 4s (5599 kB/s)
Selecting previously unselected package groff-base.
(Reading database ... 15134 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.6-3_armhf.deb ...
Unpacking libbsd0:armhf (0.8.6-3) ...
Selecting previously unselected package bsdmainutils.
Preparing to unpack .../02-bsdmainutils_9.0.14_armhf.deb ...
Unpacking bsdmainutils (9.0.14) ...
Selecting previously unselected package libpipeline1:armhf.
Preparing to unpack .../03-libpipeline1_1.5.0-1_armhf.deb ...
Unpacking libpipeline1:armhf (1.5.0-1) ...
Selecting previously unselected package man-db.
Preparing to unpack .../04-man-db_2.7.6.1-4_armhf.deb ...
Unpacking man-db (2.7.6.1-4) ...
Selecting previously unselected package libstemmer0d:armhf.
Preparing to unpack .../05-libstemmer0d_0+svn585-1_armhf.deb ...
Unpacking libstemmer0d:armhf (0+svn585-1) ...
Selecting previously unselected package libmagic-mgc.
Preparing to unpack .../06-libmagic-mgc_1%3a5.32-1_armhf.deb ...
Unpacking libmagic-mgc (1:5.32-1) ...
Selecting previously unselected package libmagic1:armhf.
Preparing to unpack .../07-libmagic1_1%3a5.32-1_armhf.deb ...
Unpacking libmagic1:armhf (1:5.32-1) ...
Selecting previously unselected package file.
Preparing to unpack .../08-file_1%3a5.32-1_armhf.deb ...
Unpacking file (1:5.32-1) ...
Selecting previously unselected package gettext-base.
Preparing to unpack .../09-gettext-base_0.19.8.1-4_armhf.deb ...
Unpacking gettext-base (0.19.8.1-4) ...
Selecting previously unselected package libevent-2.1-6:armhf.
Preparing to unpack .../10-libevent-2.1-6_2.1.8-stable-4_armhf.deb ...
Unpacking libevent-2.1-6:armhf (2.1.8-stable-4) ...
Selecting previously unselected package libicu57:armhf.
Preparing to unpack .../11-libicu57_57.1-8_armhf.deb ...
Unpacking libicu57:armhf (57.1-8) ...
Selecting previously unselected package libxml2:armhf.
Preparing to unpack .../12-libxml2_2.9.4+dfsg1-5.1_armhf.deb ...
Unpacking libxml2:armhf (2.9.4+dfsg1-5.1) ...
Selecting previously unselected package libsigsegv2:armhf.
Preparing to unpack .../13-libsigsegv2_2.11-1_armhf.deb ...
Unpacking libsigsegv2:armhf (2.11-1) ...
Selecting previously unselected package m4.
Preparing to unpack .../14-m4_1.4.18-1_armhf.deb ...
Unpacking m4 (1.4.18-1) ...
Selecting previously unselected package autoconf.
Preparing to unpack .../15-autoconf_2.69-11_all.deb ...
Unpacking autoconf (2.69-11) ...
Selecting previously unselected package autotools-dev.
Preparing to unpack .../16-autotools-dev_20161112.1+nmu1_all.deb ...
Unpacking autotools-dev (20161112.1+nmu1) ...
Selecting previously unselected package automake.
Preparing to unpack .../17-automake_1%3a1.15.1-3_all.deb ...
Unpacking automake (1:1.15.1-3) ...
Selecting previously unselected package autopoint.
Preparing to unpack .../18-autopoint_0.19.8.1-4_all.deb ...
Unpacking autopoint (0.19.8.1-4) ...
Selecting previously unselected package libtool.
Preparing to unpack .../19-libtool_2.4.6-2_all.deb ...
Unpacking libtool (2.4.6-2) ...
Selecting previously unselected package dh-autoreconf.
Preparing to unpack .../20-dh-autoreconf_15_all.deb ...
Unpacking dh-autoreconf (15) ...
Selecting previously unselected package libarchive-zip-perl.
Preparing to unpack .../21-libarchive-zip-perl_1.59-1_all.deb ...
Unpacking libarchive-zip-perl (1.59-1) ...
Selecting previously unselected package libfile-stripnondeterminism-perl.
Preparing to unpack .../22-libfile-stripnondeterminism-perl_0.040-1_all.deb ...
Unpacking libfile-stripnondeterminism-perl (0.040-1) ...
Selecting previously unselected package libtimedate-perl.
Preparing to unpack .../23-libtimedate-perl_2.3000-2_all.deb ...
Unpacking libtimedate-perl (2.3000-2) ...
Selecting previously unselected package dh-strip-nondeterminism.
Preparing to unpack .../24-dh-strip-nondeterminism_0.040-1_all.deb ...
Unpacking dh-strip-nondeterminism (0.040-1) ...
Selecting previously unselected package libglib2.0-0:armhf.
Preparing to unpack .../25-libglib2.0-0_2.54.1-1_armhf.deb ...
Unpacking libglib2.0-0:armhf (2.54.1-1) ...
Selecting previously unselected package libcroco3:armhf.
Preparing to unpack .../26-libcroco3_0.6.12-1_armhf.deb ...
Unpacking libcroco3:armhf (0.6.12-1) ...
Selecting previously unselected package gettext.
Preparing to unpack .../27-gettext_0.19.8.1-4_armhf.deb ...
Unpacking gettext (0.19.8.1-4) ...
Selecting previously unselected package intltool-debian.
Preparing to unpack .../28-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 .../29-po-debconf_1.0.20_all.deb ...
Unpacking po-debconf (1.0.20) ...
Selecting previously unselected package debhelper.
Preparing to unpack .../30-debhelper_10.10.9_all.deb ...
Unpacking debhelper (10.10.9) ...
Selecting previously unselected package libevent-core-2.1-6:armhf.
Preparing to unpack .../31-libevent-core-2.1-6_2.1.8-stable-4_armhf.deb ...
Unpacking libevent-core-2.1-6:armhf (2.1.8-stable-4) ...
Selecting previously unselected package libevent-extra-2.1-6:armhf.
Preparing to unpack .../32-libevent-extra-2.1-6_2.1.8-stable-4_armhf.deb ...
Unpacking libevent-extra-2.1-6:armhf (2.1.8-stable-4) ...
Selecting previously unselected package libevent-pthreads-2.1-6:armhf.
Preparing to unpack .../33-libevent-pthreads-2.1-6_2.1.8-stable-4_armhf.deb ...
Unpacking libevent-pthreads-2.1-6:armhf (2.1.8-stable-4) ...
Selecting previously unselected package libevent-openssl-2.1-6:armhf.
Preparing to unpack .../34-libevent-openssl-2.1-6_2.1.8-stable-4_armhf.deb ...
Unpacking libevent-openssl-2.1-6:armhf (2.1.8-stable-4) ...
Selecting previously unselected package libevent-dev.
Preparing to unpack .../35-libevent-dev_2.1.8-stable-4_armhf.deb ...
Unpacking libevent-dev (2.1.8-stable-4) ...
Selecting previously unselected package libjemalloc1.
Preparing to unpack .../36-libjemalloc1_3.6.0-11_armhf.deb ...
Unpacking libjemalloc1 (3.6.0-11) ...
Selecting previously unselected package libjemalloc-dev.
Preparing to unpack .../37-libjemalloc-dev_3.6.0-11_armhf.deb ...
Unpacking libjemalloc-dev (3.6.0-11) ...
Selecting previously unselected package libmecab2:armhf.
Preparing to unpack .../38-libmecab2_0.996-3.1_armhf.deb ...
Unpacking libmecab2:armhf (0.996-3.1) ...
Selecting previously unselected package libmecab-dev.
Preparing to unpack .../39-libmecab-dev_0.996-3.1_armhf.deb ...
Unpacking libmecab-dev (0.996-3.1) ...
Selecting previously unselected package libmsgpackc2:armhf.
Preparing to unpack .../40-libmsgpackc2_2.1.5-1_armhf.deb ...
Unpacking libmsgpackc2:armhf (2.1.5-1) ...
Selecting previously unselected package libmsgpack-dev.
Preparing to unpack .../41-libmsgpack-dev_2.1.5-1_armhf.deb ...
Unpacking libmsgpack-dev (2.1.5-1) ...
Selecting previously unselected package libpcre16-3:armhf.
Preparing to unpack .../42-libpcre16-3_2%3a8.39-4_armhf.deb ...
Unpacking libpcre16-3:armhf (2:8.39-4) ...
Selecting previously unselected package libpcre32-3:armhf.
Preparing to unpack .../43-libpcre32-3_2%3a8.39-4_armhf.deb ...
Unpacking libpcre32-3:armhf (2:8.39-4) ...
Selecting previously unselected package libpcrecpp0v5:armhf.
Preparing to unpack .../44-libpcrecpp0v5_2%3a8.39-4_armhf.deb ...
Unpacking libpcrecpp0v5:armhf (2:8.39-4) ...
Selecting previously unselected package libpcre3-dev:armhf.
Preparing to unpack .../45-libpcre3-dev_2%3a8.39-4_armhf.deb ...
Unpacking libpcre3-dev:armhf (2:8.39-4) ...
Selecting previously unselected package libpgm-5.2-0:armhf.
Preparing to unpack .../46-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 .../47-libsodium18_1.0.14-1_armhf.deb ...
Unpacking libsodium18:armhf (1.0.14-1) ...
Selecting previously unselected package libssl-dev:armhf.
Preparing to unpack .../48-libssl-dev_1.1.0g-2_armhf.deb ...
Unpacking libssl-dev:armhf (1.1.0g-2) ...
Selecting previously unselected package libstemmer-dev:armhf.
Preparing to unpack .../49-libstemmer-dev_0+svn585-1_armhf.deb ...
Unpacking libstemmer-dev:armhf (0+svn585-1) ...
Selecting previously unselected package libzmq5:armhf.
Preparing to unpack .../50-libzmq5_4.2.2-1_armhf.deb ...
Unpacking libzmq5:armhf (4.2.2-1) ...
Selecting previously unselected package libzmq3-dev:armhf.
Preparing to unpack .../51-libzmq3-dev_4.2.2-1_armhf.deb ...
Unpacking libzmq3-dev:armhf (4.2.2-1) ...
Selecting previously unselected package libzstd1.
Preparing to unpack .../52-libzstd1_1.3.1+dfsg-2_armhf.deb ...
Unpacking libzstd1 (1.3.1+dfsg-2) ...
Selecting previously unselected package libzstd-dev.
Preparing to unpack .../53-libzstd-dev_1.3.1+dfsg-2_armhf.deb ...
Unpacking libzstd-dev (1.3.1+dfsg-2) ...
Selecting previously unselected package pkg-config.
Preparing to unpack .../54-pkg-config_0.29-4_armhf.deb ...
Unpacking pkg-config (0.29-4) ...
Selecting previously unselected package zlib1g-dev:armhf.
Preparing to unpack .../55-zlib1g-dev_1%3a1.2.8.dfsg-5_armhf.deb ...
Unpacking zlib1g-dev:armhf (1:1.2.8.dfsg-5) ...
Selecting previously unselected package liblz4-dev:armhf.
Preparing to unpack .../56-liblz4-dev_0.0~r131-2_armhf.deb ...
Unpacking liblz4-dev:armhf (0.0~r131-2) ...
Selecting previously unselected package sbuild-build-depends-groonga-dummy.
Preparing to unpack .../57-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 libevent-2.1-6:armhf (2.1.8-stable-4) ...
Setting up libevent-core-2.1-6:armhf (2.1.8-stable-4) ...
Setting up libarchive-zip-perl (1.59-1) ...
Setting up libjemalloc1 (3.6.0-11) ...
Setting up libtimedate-perl (2.3000-2) ...
Setting up libsigsegv2:armhf (2.11-1) ...
Setting up libssl-dev:armhf (1.1.0g-2) ...
Setting up groff-base (1.22.3-9) ...
Setting up libevent-openssl-2.1-6:armhf (2.1.8-stable-4) ...
Setting up libglib2.0-0:armhf (2.54.1-1) ...
No schema files found: doing nothing.
Setting up libzstd1 (1.3.1+dfsg-2) ...
Setting up gettext-base (0.19.8.1-4) ...
Setting up libstemmer0d:armhf (0+svn585-1) ...
Setting up libmecab2:armhf (0.996-3.1) ...
Setting up libpipeline1:armhf (1.5.0-1) ...
Setting up m4 (1.4.18-1) ...
Setting up libicu57:armhf (57.1-8) ...
Setting up libbsd0:armhf (0.8.6-3) ...
Setting up libjemalloc-dev (3.6.0-11) ...
Setting up libxml2:armhf (2.9.4+dfsg1-5.1) ...
Setting up libstemmer-dev:armhf (0+svn585-1) ...
Setting up libmagic-mgc (1:5.32-1) ...
Setting up libmagic1:armhf (1:5.32-1) ...
Setting up libcroco3:armhf (0.6.12-1) ...
Setting up pkg-config (0.29-4) ...
Setting up libevent-pthreads-2.1-6:armhf (2.1.8-stable-4) ...
Processing triggers for libc-bin (2.25-2+rpi1) ...
Setting up autotools-dev (20161112.1+nmu1) ...
Setting up libzstd-dev (1.3.1+dfsg-2) ...
Setting up libpcrecpp0v5:armhf (2:8.39-4) ...
Setting up libpcre32-3:armhf (2:8.39-4) ...
Setting up libpcre16-3:armhf (2:8.39-4) ...
Setting up libsodium18:armhf (1.0.14-1) ...
Setting up liblz4-dev:armhf (0.0~r131-2) ...
Setting up bsdmainutils (9.0.14) ...
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 libmsgpackc2:armhf (2.1.5-1) ...
Setting up autopoint (0.19.8.1-4) ...
Setting up libevent-extra-2.1-6:armhf (2.1.8-stable-4) ...
Setting up zlib1g-dev:armhf (1:1.2.8.dfsg-5) ...
Setting up libfile-stripnondeterminism-perl (0.040-1) ...
Setting up libpcre3-dev:armhf (2:8.39-4) ...
Setting up libzmq5:armhf (4.2.2-1) ...
Setting up libmecab-dev (0.996-3.1) ...
Setting up gettext (0.19.8.1-4) ...
Setting up libmsgpack-dev (2.1.5-1) ...
Setting up libzmq3-dev:armhf (4.2.2-1) ...
Setting up autoconf (2.69-11) ...
Setting up file (1:5.32-1) ...
Setting up intltool-debian (0.35.0+20060710.4) ...
Setting up libevent-dev (2.1.8-stable-4) ...
Setting up automake (1:1.15.1-3) ...
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-4) ...
Not building database; man-db/auto-update is not 'true'.
Setting up libtool (2.4.6-2) ...
Setting up po-debconf (1.0.20) ...
Setting up dh-autoreconf (15) ...
Setting up dh-strip-nondeterminism (0.040-1) ...
Setting up debhelper (10.10.9) ...
Setting up sbuild-build-depends-groonga-dummy (0.invalid.0) ...
Processing triggers for libc-bin (2.25-2+rpi1) ...
W: No sandbox user '_apt' on the system, can not drop privileges

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

Kernel: Linux 4.4.0-79-generic armhf (armv8l)
Toolchain package versions: binutils_2.29.1-8+rpi1 dpkg-dev_1.19.0.4 g++-7_7.2.0-14 gcc-7_7.2.0-14 libc6-dev_2.25-2+rpi1 libstdc++-7-dev_7.2.0-14 libstdc++6_7.2.0-14 linux-libc-dev_4.9.51-1+rpi3+b1
Package versions: adduser_3.116 apt_1.6~alpha5 autoconf_2.69-11 automake_1:1.15.1-3 autopoint_0.19.8.1-4 autotools-dev_20161112.1+nmu1 base-files_10+rpi1 base-passwd_3.5.44 bash_4.4-5 binutils_2.29.1-8+rpi1 binutils-arm-linux-gnueabihf_2.29.1-8+rpi1 binutils-common_2.29.1-8+rpi1 bsdmainutils_9.0.14 bsdutils_1:2.30.2-0.1 build-essential_12.4 bzip2_1.0.6-8.1 ca-certificates_20170717 coreutils_8.28-1 cpio_2.11+dfsg-6 cpp_4:7.2.0-1d1 cpp-7_7.2.0-14 dash_0.5.8-2.5 debconf_1.5.65 debhelper_10.10.9 debianutils_4.8.3 dh-autoreconf_15 dh-strip-nondeterminism_0.040-1 diffutils_1:3.6-1 dirmngr_2.2.2-1+rpi1 dmsetup_2:1.02.145-4 dpkg_1.19.0.4 dpkg-dev_1.19.0.4 e2fslibs_1.43.7-1 e2fsprogs_1.43.7-1 e2fsprogs-l10n_1.43.7-1 fakeroot_1.22-2 fdisk_2.30.2-0.1 file_1:5.32-1 findutils_4.6.0+git+20170828-2 g++_4:7.2.0-1d1 g++-7_7.2.0-14 gcc_4:7.2.0-1d1 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-5-base_5.4.1-4 gcc-7_7.2.0-14 gcc-7-base_7.2.0-14 gettext_0.19.8.1-4 gettext-base_0.19.8.1-4 gnupg_2.2.2-1+rpi1 gnupg-agent_2.2.2-1+rpi1 gnupg-l10n_2.2.2-1+rpi1 gnupg-utils_2.2.2-1+rpi1 gpg_2.2.2-1+rpi1 gpg-agent_2.2.2-1+rpi1 gpg-wks-client_2.2.2-1+rpi1 gpg-wks-server_2.2.2-1+rpi1 gpgconf_2.2.2-1+rpi1 gpgsm_2.2.2-1+rpi1 gpgv_2.2.2-1+rpi1 grep_3.1-2 groff-base_1.22.3-9 gzip_1.6-5 hostname_3.18 init-system-helpers_1.51 initramfs-tools_0.130 initramfs-tools-core_0.130 intltool-debian_0.35.0+20060710.4 klibc-utils_2.0.4-9+rpi1 kmod_24-1 libacl1_2.2.52-3 libapparmor1_2.11.1-3 libapt-pkg5.0_1.6~alpha5 libarchive-zip-perl_1.59-1 libasan4_7.2.0-14 libassuan0_2.4.4-1 libatomic1_7.2.0-14 libattr1_1:2.4.47-2 libaudit-common_1:2.8.1-2 libaudit1_1:2.8.1-2 libbinutils_2.29.1-8+rpi1 libblkid1_2.30.2-0.1 libbsd0_0.8.6-3 libbz2-1.0_1.0.6-8.1 libc-bin_2.25-2+rpi1 libc-dev-bin_2.25-2+rpi1 libc6_2.25-2+rpi1 libc6-dev_2.25-2+rpi1 libcap-ng0_0.7.7-3.1+b1 libcap2_1:2.25-1.1 libcc1-0_7.2.0-14 libcilkrts5_7.2.0-14 libcomerr2_1.43.7-1 libcroco3_0.6.12-1 libcryptsetup4_2:1.7.5-1 libdb5.3_5.3.28-13.1 libdbus-1-3_1.12.2-1 libdebconfclient0_0.232 libdevmapper1.02.1_2:1.02.145-4 libdpkg-perl_1.19.0.4 libdrm-common_2.4.88-1+rpi1 libdrm2_2.4.88-1+rpi1 libevent-2.1-6_2.1.8-stable-4 libevent-core-2.1-6_2.1.8-stable-4 libevent-dev_2.1.8-stable-4 libevent-extra-2.1-6_2.1.8-stable-4 libevent-openssl-2.1-6_2.1.8-stable-4 libevent-pthreads-2.1-6_2.1.8-stable-4 libfakeroot_1.22-2 libfdisk1_2.30.2-0.1 libffi6_3.2.1-6 libfile-stripnondeterminism-perl_0.040-1 libgcc-7-dev_7.2.0-14 libgcc1_1:7.2.0-14 libgcrypt20_1.8.1-4 libgdbm3_1.8.3-14 libglib2.0-0_2.54.1-1 libgmp10_2:6.1.2+dfsg-1.1 libgnutls30_3.5.16-1 libgomp1_7.2.0-14 libgpg-error0_1.27-5 libhogweed4_3.3-2 libicu57_57.1-8 libidn11_1.33-2 libidn2-0_2.0.4-1.1 libip4tc0_1.6.1-2+b1 libisl15_0.18-1 libjemalloc-dev_3.6.0-11 libjemalloc1_3.6.0-11 libklibc_2.0.4-9+rpi1 libkmod2_24-1 libksba8_1.3.5-2 libldap-2.4-2_2.4.45+dfsg-1 libldap-common_2.4.45+dfsg-1 liblz4-1_0.0~r131-2 liblz4-dev_0.0~r131-2 liblzma5_5.2.2-1.3 libmagic-mgc_1:5.32-1 libmagic1_1:5.32-1 libmecab-dev_0.996-3.1 libmecab2_0.996-3.1 libmount1_2.30.2-0.1 libmpc3_1.0.3-2 libmpfr4_3.1.6-1 libmsgpack-dev_2.1.5-1 libmsgpackc2_2.1.5-1 libncurses5_6.0+20170902-1 libncursesw5_6.0+20170902-1 libnettle6_3.3-2 libnpth0_1.5-3 libp11-kit0_0.23.9-2 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-4 libpcre3_2:8.39-4 libpcre3-dev_2:8.39-4 libpcre32-3_2:8.39-4 libpcrecpp0v5_2:8.39-4 libperl5.24_5.24.1-7 libperl5.26_5.26.1-2 libpgm-5.2-0_5.2.122~dfsg-2 libpipeline1_1.5.0-1 libplymouth4_0.9.3-1 libpng16-16_1.6.34-1 libprocps6_2:3.3.12-3 libreadline7_7.0-3 libsasl2-2_2.1.27~101-g0780600+dfsg-3 libsasl2-modules_2.1.27~101-g0780600+dfsg-3 libsasl2-modules-db_2.1.27~101-g0780600+dfsg-3 libseccomp2_2.3.1-2.1 libselinux1_2.7-2 libsemanage-common_2.7-2 libsemanage1_2.7-2 libsepol1_2.7-1 libsigsegv2_2.11-1 libsmartcols1_2.30.2-0.1 libsodium18_1.0.14-1 libsqlite3-0_3.21.0-1 libss2_1.43.7-1 libssl-dev_1.1.0g-2 libssl1.1_1.1.0g-2 libstdc++-7-dev_7.2.0-14 libstdc++6_7.2.0-14 libstemmer-dev_0+svn585-1 libstemmer0d_0+svn585-1 libsystemd0_235-3 libtasn1-6_4.12-2.1 libtimedate-perl_2.3000-2 libtinfo5_6.0+20170902-1 libtool_2.4.6-2 libubsan0_7.2.0-14 libudev1_235-3 libunistring2_0.9.7-2 libustr-1.0-1_1.0.4-6 libuuid1_2.30.2-0.1 libxml2_2.9.4+dfsg1-5.1 libzmq3-dev_4.2.2-1 libzmq5_4.2.2-1 libzstd-dev_1.3.1+dfsg-2 libzstd1_1.3.1+dfsg-2 linux-base_4.5 linux-libc-dev_4.9.51-1+rpi3+b1 login_1:4.5-1 lsb-base_9.20170808+rpi1 m4_1.4.18-1 make_4.1-9.1 makedev_2.3.1-93 man-db_2.7.6.1-4 mawk_1.3.3-17 mount_2.30.2-0.1 multiarch-support_2.25-2+rpi1 ncurses-base_6.0+20170902-1 ncurses-bin_6.0+20170902-1 openssl_1.1.0g-2 passwd_1:4.5-1 patch_2.7.5-1 perl_5.26.1-2 perl-base_5.26.1-2 perl-modules-5.24_5.24.1-7 perl-modules-5.26_5.26.1-2 pinentry-curses_1.0.0-3 pkg-config_0.29-4 plymouth_0.9.3-1 po-debconf_1.0.20 procps_2:3.3.12-3 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.11 systemd_235-3 sysvinit-utils_2.88dsf-59.10 tar_1.29b-2 tzdata_2017c-1 udev_235-3 util-linux_2.30.2-0.1 xz-utils_5.2.2-1.3 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 Sun Dec  3 22:47:59 2017 UTC
gpgv:                using RSA key 9236557B170C87F8821C0AC3C1E0D92E986F7C7E
gpgv: Can't check signature: No public key
dpkg-source: warning: failed to verify signature on ./groonga_7.0.9-1.dsc
dpkg-source: info: extracting groonga in /<<PKGBUILDDIR>>
dpkg-source: info: unpacking groonga_7.0.9.orig.tar.gz
dpkg-source: info: unpacking groonga_7.0.9-1.debian.tar.xz
dpkg-source: info: applying fix-nginx-FTBFS-on-kfreebsd.patch

Check disk 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=buster-staging-armhf-sbuild
SCHROOT_CHROOT_NAME=buster-staging-armhf-sbuild
SCHROOT_COMMAND=env
SCHROOT_GID=112
SCHROOT_GROUP=buildd
SCHROOT_SESSION_ID=buster-staging-armhf-sbuild-655676e1-ab19-4efc-b228-83917c133134
SCHROOT_UID=107
SCHROOT_USER=buildd
SHELL=/bin/sh
USER=buildd

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

dpkg-buildpackage: info: source package groonga
dpkg-buildpackage: info: source version 7.0.9-1
dpkg-buildpackage: info: source distribution unstable
 dpkg-source --before-build groonga-7.0.9
dpkg-buildpackage: info: host architecture armhf
 fakeroot debian/rules clean
dh clean
   dh_auto_clean
   dh_clean
 debian/rules build-arch
dh build-arch
   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 -Wno-unused-but-set-variable... yes
checking if g++ supports -Wno-unused-but-set-variable... yes
checking if gcc supports -Wno-pointer-sign... 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 -Wno-format-truncation... yes
checking if g++ supports -Wno-format-truncation... 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 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 for ARROW... no
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 data/tmpfiles.d/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 vendor/groonga-log/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 groonga-arrow.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.4.0-79-generic armv8l
checking for C compiler ... found
 + using GNU C compiler
checking for --with-ld-opt="-L/<<PKGBUILDDIR>>/lib/.libs -L/<<PKGBUILDDIR>>/vendor/onigmo-source/.libs   -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 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 sched_setaffinity() ... 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_SENDSRCADDR ... 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/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... armv8l-unknown-linux-gnueabihf
checking host system type... armv8l-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 armv8l-unknown-linux-gnueabihf file names to armv8l-unknown-linux-gnueabihf format... func_convert_file_noop
checking how to convert armv8l-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 7.0.9 configuration:
-----------------------
  Compiler:              gcc
  CFLAGS:                -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wformat -Wno-format-truncation -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 7.0.9!
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
regparse.c: In function 'name_find':
regparse.c:547: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:697:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GET_CODE_POINT(code,p)   code = *((OnigCodePoint* )(p))
                                           ^
regparse.c:1690:5: note: in expansion of macro 'GET_CODE_POINT'
     GET_CODE_POINT(n, bbuf->p);
     ^~~~~~~~~~~~~~
regparse.c:1692: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:1792: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:1858: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:1941:11: warning: cast increases required alignment of target type [-Wcast-align]
   data1 = (OnigCodePoint* )(bbuf1->p);
           ^
regparse.c:1942: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
regexec.c: In function 'match_at':
regexec.c:504:18: warning: cast increases required alignment of target type [-Wcast-align]
     stk_alloc  = (OnigStackType* )(alloc_addr + sizeof(OnigStackIndex) * (ptr_num));\
                  ^
regexec.c:1661:3: note: in expansion of macro 'STACK_INIT'
   STACK_INIT(alloca_base, xmalloc_base, n, INIT_MATCH_STACK_SIZE);
   ^~~~~~~~~~
regexec.c:1664: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
In file included from regparse.h:33:0,
                 from regcomp.c:31:
regcomp.c: In function 'onig_is_in_code_range':
regint.h:697:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GET_CODE_POINT(code,p)   code = *((OnigCodePoint* )(p))
                                           ^
regcomp.c:6075:3: note: in expansion of macro 'GET_CODE_POINT'
   GET_CODE_POINT(n, p);
   ^~~~~~~~~~~~~~
regcomp.c:6076:10: warning: cast increases required alignment of target type [-Wcast-align]
   data = (OnigCodePoint* )p;
          ^
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
In file included from regparse.h:33:0,
                 from regparse.c:31:
regparse.c: In function 'is_onechar_cclass':
regint.h:697:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GET_CODE_POINT(code,p)   code = *((OnigCodePoint* )(p))
                                           ^
regparse.c:6478:5: note: in expansion of macro 'GET_CODE_POINT'
     GET_CODE_POINT(n, bbuf->p);
     ^~~~~~~~~~~~~~
regparse.c:6479:12: warning: cast increases required alignment of target type [-Wcast-align]
     data = (OnigCodePoint* )(bbuf->p) + 1;
            ^
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
mv -f .deps/iso_8859_3.Tpo .deps/iso_8859_3.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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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_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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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_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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
mv -f .deps/iso_8859_10.Tpo .deps/iso_8859_10.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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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_1252.Tpo .deps/windows_1252.Plo
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
sed -e 's,[@]datadir[@],/usr/share,g' -e 's,[@]datarootdir[@],/usr/share,g' -e 's,[@]PACKAGE_VERSION[@],6.1.1,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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -version-info 6:2: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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]);
                             ~~^             ~~~~~~~~~~~~~~
                             %d
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]);
                                 ~~^                         ~~~~~~~~~~~~~~
                                 %d
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,
 ^~~~
encode.c:136: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: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");
               ^~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
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,
 ^~~~
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,
 ^~~~
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,
 ^~~~
listcap.c: In function 'node_callback':
encode.c:157:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
     ^~~~~~~
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);
                         ~~^
                         %d
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);
                             ~~^
                             %d
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,
 ^~~~
listcap.c: In function 'node_callback_last':
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);
                         ~~^
                         %d
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,
 ^~~~
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);
                             ~~^
                             %d
names.c: In function 'name_callback':
encode.c:159:14: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
              ^~~~~~~~~~~
names.c:20:7: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     s = (ref == gn ? "*" : "");
       ^
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
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);
                       ~~^             ~~~~~~~~~~~~~~~
                       %d
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);
                           ~~^                          ~~~~~~~~~~~~~~~
                           %d
encode.c:161:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
     ^~~~~~~
listcap.c: In function 'ex':
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
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]);
                             ~~^             ~~~~~~~~~~~~~~
                             %d
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");
     ^~~~~~~
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]);
                                 ~~^                         ~~~~~~~~~~~~~~
                                 %d
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,
 ^~~~~~~~~~~
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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]);
                             ~~^             ~~~~~~~~~~~~~~
                             %d
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]);
                                 ~~^                         ~~~~~~~~~~~~~~
                                 %d
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]);
                             ~~^             ~~~~~~~~~~~~~~
                             %d
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]);
                                 ~~^                         ~~~~~~~~~~~~~~
                                 %d
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]);
                             ~~^             ~~~~~~~~~~~~~~
                             %d
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]);
                                 ~~^                         ~~~~~~~~~~~~~~
                                 %d
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
mv -f .deps/encode.Tpo .deps/encode.Po
/bin/bash ../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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);
                          ~~^
                          %d
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);
                             ~~^
                             %d
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]);
                           ~~^             ~~~~~~~~~~~~~~
                           %d
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]);
                               ~~^                         ~~~~~~~~~~~~~~
                               %d
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 
libtool: link: gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
libtool: link: gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 
/bin/bash ../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 
/bin/bash ../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 
libtool: link: gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
libtool: link: gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 
/bin/bash ../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
libtool: link: gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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:30: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:685: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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:19: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:19: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
../mruby-source/src/gc.c: In function 'add_heap':
../mruby-source/src/gc.c:195:21: warning: cast increases required alignment of target type [-Wcast-align]
 #define objects(p) ((RVALUE *)p->objects)
                     ^
../mruby-source/src/gc.c:329: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:329: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:195:21: warning: cast increases required alignment of target type [-Wcast-align]
 #define objects(p) ((RVALUE *)p->objects)
                     ^
../mruby-source/src/gc.c:383: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:383: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:522: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:659:26: warning: cast increases required alignment of target type [-Wcast-align]
       struct RArray *a = (struct RArray*)obj;
                          ^
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 'obj_free':
../mruby-source/src/gc.c:775: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:777:22: warning: cast increases required alignment of target type [-Wcast-align]
       mrb_free(mrb, ((struct RArray*)obj)->ptr);
                      ^
../mruby-source/src/gc.c:786: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:943: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:195:21: warning: cast increases required alignment of target type [-Wcast-align]
 #define objects(p) ((RVALUE *)p->objects)
                     ^
../mruby-source/src/gc.c:1015:17: note: in expansion of macro 'objects'
     RVALUE *p = objects(page);
                 ^~~~~~~
../mruby-source/src/gc.c:1015: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:195:21: warning: cast increases required alignment of target type [-Wcast-align]
 #define objects(p) ((RVALUE *)p->objects)
                     ^
../mruby-source/src/gc.c:1489:9: note: in expansion of macro 'objects'
     p = objects(page);
         ^~~~~~~
../mruby-source/src/gc.c:1489:5: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
     p = objects(page);
     ^
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
In file included from ./../mruby-source/include/mruby/hash.h:11:0,
                 from ../mruby-source/src/kernel.c:9:
../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:645: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
../mruby-source/src/string.c: In function 'str_new_static':
../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: 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:106:7: note: in expansion of macro 'mrb_obj_alloc_string'
   s = mrb_obj_alloc_string(mrb);
       ^~~~~~~~~~~~~~~~~~~~
../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:433:9: note: in expansion of macro 'mrb_obj_alloc_string'
     s = mrb_obj_alloc_string(mrb);
         ^~~~~~~~~~~~~~~~~~~~
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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/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:37: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:37:1: note: in expansion of macro 'KHASH_DEFINE'
 KHASH_DEFINE (n2s, mrb_sym, mrb_sym, FALSE, sym_hash_func, sym_hash_equal)
 ^~~~~~~~~~~~
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y: In function 'new_int':
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:726:33: warning: cast increases required alignment of target type [-Wcast-align]
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:159:40: note: in definition of macro 'list3'
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y: In function 'new_float':
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:733:34: warning: cast increases required alignment of target type [-Wcast-align]
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:138:35: note: in definition of macro 'cons'
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y: In function 'new_str':
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:740:37: warning: cast increases required alignment of target type [-Wcast-align]
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:138:35: note: in definition of macro 'cons'
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:740:32: note: in expansion of macro 'cons'
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y: In function 'new_xstr':
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:754:38: warning: cast increases required alignment of target type [-Wcast-align]
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:138:35: note: in definition of macro 'cons'
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:754:33: note: in expansion of macro 'cons'
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y: In function 'new_regx':
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:775:38: warning: cast increases required alignment of target type [-Wcast-align]
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:138:35: note: in definition of macro 'cons'
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:775:33: note: in expansion of macro 'cons'
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:775:54: warning: cast increases required alignment of target type [-Wcast-align]
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:138:35: note: in definition of macro 'cons'
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:775:33: note: in expansion of macro 'cons'
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:775:49: note: in expansion of macro 'cons'
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:775:65: warning: cast increases required alignment of target type [-Wcast-align]
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:138:35: note: in definition of macro 'cons'
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:775:33: note: in expansion of macro 'cons'
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:775:49: note: in expansion of macro 'cons'
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
mruby-file-stat/src/file-stat.c: In function 'stat_dev_major':
mruby-file-stat/src/file-stat.c:292:13: warning: In the GNU C Library, "major" is defined
 by <sys/sysmacros.h>. For historical compatibility, it is
 currently defined by <sys/types.h> as well, but we plan to
 remove this soon. To use "major", include <sys/sysmacros.h>
 directly. If you did not intend to use a system-defined macro
 "major", you should undefine it after including <sys/types.h>.
   return mrb_fixnum_value(major(get_stat(mrb, self)->st_dev));
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                                                                                                                                                                                                                                                                                                      
mruby-file-stat/src/file-stat.c: In function 'stat_dev_minor':
mruby-file-stat/src/file-stat.c:302:13: warning: In the GNU C Library, "minor" is defined
 by <sys/sysmacros.h>. For historical compatibility, it is
 currently defined by <sys/types.h> as well, but we plan to
 remove this soon. To use "minor", include <sys/sysmacros.h>
 directly. If you did not intend to use a system-defined macro
 "minor", you should undefine it after including <sys/types.h>.
   return mrb_fixnum_value(minor(get_stat(mrb, self)->st_dev));
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                                                                                                                                                                                                                                                                                                      
mruby-file-stat/src/file-stat.c: In function 'stat_rdev_major':
mruby-file-stat/src/file-stat.c:348:13: warning: In the GNU C Library, "major" is defined
 by <sys/sysmacros.h>. For historical compatibility, it is
 currently defined by <sys/types.h> as well, but we plan to
 remove this soon. To use "major", include <sys/sysmacros.h>
 directly. If you did not intend to use a system-defined macro
 "major", you should undefine it after including <sys/types.h>.
   return mrb_fixnum_value(major(get_stat(mrb, self)->st_rdev));
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                                                                                                                                                                                                                                                                                                     
mruby-file-stat/src/file-stat.c: In function 'stat_rdev_minor':
mruby-file-stat/src/file-stat.c:358:13: warning: In the GNU C Library, "minor" is defined
 by <sys/sysmacros.h>. For historical compatibility, it is
 currently defined by <sys/types.h> as well, but we plan to
 remove this soon. To use "minor", include <sys/sysmacros.h>
 directly. If you did not intend to use a system-defined macro
 "minor", you should undefine it after including <sys/types.h>.
   return mrb_fixnum_value(minor(get_stat(mrb, self)->st_rdev));
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~                                                                                                                                                                                                                                                                                                                     
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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-dir/src/dir.lo mruby-dir/src/dir.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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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-dir/src/dir.c  -fPIC -DPIC -o mruby-dir/src/.libs/dir.o
/bin/bash ../../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 mruby-dir/src/dir.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 mruby-dir/src/.libs/dir.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'
Making all in groonga-log
make[4]: Entering directory '/<<PKGBUILDDIR>>/vendor/groonga-log'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/vendor/groonga-log'
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 -Wno-unused-but-set-variable -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wformat -Wno-format-truncation -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
/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 -Wno-unused-but-set-variable -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -c -o predictive-cursor.lo predictive-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 -Wno-unused-but-set-variable -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wformat -Wno-format-truncation -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
/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 -Wno-unused-but-set-variable -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -c -o trie.lo trie.cpp
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 -Wno-unused-but-set-variable -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wformat -Wno-format-truncation -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]);
         ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
trie.cpp: In member function 'void grn::dat::Trie::mkq_sort(grn::dat::UInt32*, grn::dat::UInt32*, grn::dat::UInt32)':
trie.cpp:460:18: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
   while ((r - l) >= MKQ_SORT_THRESHOLD) {
          ~~~~~~~~^~~~~~~~~~~~~~~~~~~~~
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:372: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 -Wno-unused-but-set-variable -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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:766,
                 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:1467: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:1468: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:1469: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:1470: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:1471: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:1472: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:1473: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:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1474: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:1475: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_converter.lo mrb_converter.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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_indexable.lo mrb_indexable.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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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:766,
                 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:1494: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_logger.lo mrb_logger.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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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));
                                     ^
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_pointer.lo mrb_pointer.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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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:766,
                 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:1476: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_record.lo mrb_record.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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_void.lo mrb_void.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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_window_definition.lo mrb_window_definition.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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_window_definition.c  -fPIC -DPIC -o .libs/mrb_window_definition.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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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:42:0,
                 from ../grn.h:766,
                 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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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_window_definition.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_window_definition.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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
In file included from ../../include/groonga.h:22:0,
                 from ../grn.h:766,
                 from ../grn_proc.h:21,
                 from proc_fuzzy_search.c:19:
proc_fuzzy_search.c: In function 'sequential_fuzzy_search':
../../include/groonga/groonga.h:1475: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:1470: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:1470: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:1470: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:1470: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);
                             ^~~~~~~~~~~~~~~~
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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_dump.c: In function 'dump_index_column_sources':
proc_dump.c:244: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:766,
                 from ../grn_proc.h:21,
                 from proc_dump.c:19:
proc_dump.c: In function 'dump_record':
../../include/groonga/groonga.h:1495: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:435:14: note: in expansion of macro 'GRN_PTR_VALUE_AT'
     column = GRN_PTR_VALUE_AT(columns, j);
              ^~~~~~~~~~~~~~~~
proc_dump.c: In function 'dump_records':
../../include/groonga/groonga.h:1495: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:608:14: note: in expansion of macro 'GRN_PTR_VALUE_AT'
     column = GRN_PTR_VALUE_AT(&columns, i);
              ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1495: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:694: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:1495: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:781: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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),
                      ^
In file included from ../../include/groonga.h:22:0,
                 from ../grn.h:766,
                 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:1476: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);
                 ^~~~~~~~~~~~~
proc_highlight.c: In function 'func_highlight_html':
../../include/groonga/groonga.h:1476: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:469:18: note: in expansion of macro 'GRN_PTR_VALUE'
       keywords = GRN_PTR_VALUE(keywords_ptr);
                  ^~~~~~~~~~~~~
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o proc_in_records.lo proc_in_records.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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c proc_in_records.c  -fPIC -DPIC -o .libs/proc_in_records.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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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:766,
                 from ../grn_proc.h:21,
                 from proc_in_records.c:19:
proc_in_records.c: In function 'grn_in_records_data_free':
../../include/groonga/groonga.h:1495: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_in_records.c:49:24: note: in expansion of macro 'GRN_PTR_VALUE_AT'
     condition_column = GRN_PTR_VALUE_AT(&(data->condition_columns), i);
                        ^~~~~~~~~~~~~~~~
proc_in_records.c: In function 'func_in_records_next':
../../include/groonga/groonga.h:1495: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_in_records.c:260:24: note: in expansion of macro 'GRN_PTR_VALUE_AT'
     condition_column = GRN_PTR_VALUE_AT(&(data->condition_columns), nth);
                        ^~~~~~~~~~~~~~~~
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
proc_in_records.c: In function 'selector_in_records':
../../include/groonga/groonga.h:1495: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_in_records.c:455:28: note: in expansion of macro 'GRN_PTR_VALUE_AT'
         condition_column = GRN_PTR_VALUE_AT(&condition_columns, nth);
                            ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1495: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_in_records.c:496:24: note: in expansion of macro 'GRN_PTR_VALUE_AT'
     condition_column = GRN_PTR_VALUE_AT(&condition_columns, nth);
                        ^~~~~~~~~~~~~~~~
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o proc_query.lo proc_query.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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
In file included from ../../include/groonga.h:22:0,
                 from ../grn.h:766,
                 from ../grn_pat.h:21,
                 from proc_object_inspect.c:19:
proc_object_inspect.c: In function 'command_object_inspect_column_index_sources':
../../include/groonga/groonga.h:1494: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_object_inspect.c:446:17: note: in expansion of macro 'GRN_RECORD_VALUE_AT'
     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 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o proc_query_log_flags.lo proc_query_log_flags.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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c proc_query_log_flags.c  -fPIC -DPIC -o .libs/proc_query_log_flags.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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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:766,
                 from ../grn_proc.h:21,
                 from proc_schema.c:19:
proc_schema.c: In function 'command_schema_output_tokenizers':
../../include/groonga/groonga.h:1494: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:1494: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:1494: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:1495: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:1495: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:1494: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:1494: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:1494: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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:766,
                 from ../grn_proc.h:21,
                 from proc_snippet.c:19:
proc_snippet.c: In function 'func_snippet':
../../include/groonga/groonga.h:1470: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:1470: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);
                           ^~~~~~~~~~~~~~~~
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
proc_snippet.c: In function 'func_snippet_html':
../../include/groonga/groonga.h:1476: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:1476: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);
                ^~~~~~~~~~~~~
In file included from ../../include/groonga.h:42:0,
                 from ../grn.h:766,
                 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:1134: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:1146: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:766,
                 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:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
proc_select.c:1561:12: note: in expansion of macro 'GRN_INT32_VALUE'
     return GRN_INT32_VALUE(factor_object);
            ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
proc_select.c:1569:16: note: in expansion of macro 'GRN_INT32_VALUE'
       factor = GRN_INT32_VALUE(&int32_object);
                ^~~~~~~~~~~~~~~
proc_select.c: In function 'grn_select_drilldown_execute':
proc_select.c:2109: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:2140:13: warning: cast increases required alignment of target type [-Wcast-align]
             (grn_slice_data *)grn_hash_get_value_(ctx, data->slices,
             ^
proc_select.c:2160: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:2341: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:766,
                 from ../grn_proc.h:21,
                 from proc_select.c:19:
proc_select.c: In function 'grn_select_drilldowns_execute':
../../include/groonga/groonga.h:1494: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:2445:10: note: in expansion of macro 'GRN_RECORD_VALUE_AT'
     id = GRN_RECORD_VALUE_AT(&tsorted_ids, i);
          ^~~~~~~~~~~~~~~~~~~
In file included from ../../include/groonga.h:22:0,
                 from ../grn.h:766,
                 from ../grn_proc.h:21,
                 from proc_table.c:19:
proc_table.c: In function 'command_table_list':
../../include/groonga/groonga.h:1495: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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:766,
                 from ../grn_proc.h:21,
                 from proc_tokenize.c:19:
../../include/groonga/groonga.h:1470: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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_highlight.lo proc_in_records.lo proc_lock.lo proc_object.lo proc_object_inspect.lo proc_object_list.lo proc_query.lo proc_query_log_flags.lo proc_schema.lo proc_select.lo proc_snippet.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_highlight.o .libs/proc_in_records.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_query_log_flags.o .libs/proc_schema.o .libs/proc_select.o .libs/proc_snippet.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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
In file included from ../../include/groonga.h:22:0,
                 from ../grn.h:766,
                 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:1467: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:1469: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:1471: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:1468: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:1470: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:1472: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:1473: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:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1474: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:1478: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:1486: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:1488: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:766,
                 from ts_expr_builder.h:21,
                 from ts_expr_builder.c:19:
../../include/groonga/groonga.h:1487: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:1489: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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)
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
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;
                                              ^
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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_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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o command.lo command.c
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;
                ^
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_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);
                    ^
cache.c: In function 'grn_cache_open_memory':
cache.c:121:29: warning: cast increases required alignment of target type [-Wcast-align]
   cache->impl.memory.next = (grn_cache_entry_memory *)cache;
                             ^
cache.c:122:29: warning: cast increases required alignment of target type [-Wcast-align]
   cache->impl.memory.prev = (grn_cache_entry_memory *)cache;
                             ^
cache.c: In function 'grn_cache_entry_persistent_delete_link':
cache.c:474:5: warning: cast increases required alignment of target type [-Wcast-align]
     (grn_cache_entry_persistent *)grn_hash_get_value_(ctx,
     ^
cache.c:479:5: warning: cast increases required alignment of target type [-Wcast-align]
     (grn_cache_entry_persistent *)grn_hash_get_value_(ctx,
     ^
cache.c: In function 'grn_cache_entry_persistent_prepend_link':
cache.c:501:5: warning: cast increases required alignment of target type [-Wcast-align]
     (grn_cache_entry_persistent *)grn_hash_get_value_(ctx,
     ^
cache.c: In function 'grn_cache_expire_memory_without_lock':
cache.c:526:5: warning: cast increases required alignment of target type [-Wcast-align]
     (grn_cache_entry_memory *)(&(cache->impl.memory));
     ^
cache.c: In function 'grn_cache_expire_persistent_without_lock':
cache.c:540:5: warning: cast increases required alignment of target type [-Wcast-align]
     (grn_cache_entry_persistent *)grn_hash_get_value_(ctx,
     ^
cache.c:548:7: warning: cast increases required alignment of target type [-Wcast-align]
       (grn_cache_entry_persistent *)grn_hash_get_value_(ctx,
       ^
cache.c: In function 'grn_cache_set_max_n_entries_persistent':
cache.c:591:7: warning: cast increases required alignment of target type [-Wcast-align]
       (grn_cache_entry_persistent *)grn_hash_get_value_(ctx,
       ^
cache.c: In function 'grn_cache_get_max_n_entries_persistent':
cache.c:640:7: warning: cast increases required alignment of target type [-Wcast-align]
       (grn_cache_entry_persistent *)grn_hash_get_value_(ctx,
       ^
cache.c: In function 'grn_cache_get_statistics_persistent':
cache.c:690:7: warning: cast increases required alignment of target type [-Wcast-align]
       (grn_cache_entry_persistent *)grn_hash_get_value_(ctx,
       ^
cache.c: In function 'grn_cache_fetch_memory':
cache.c:740:9: warning: cast increases required alignment of target type [-Wcast-align]
         (grn_cache_entry_memory *)(&(cache->impl.memory));
         ^
cache.c: In function 'grn_cache_fetch_persistent':
cache.c:782:7: warning: cast increases required alignment of target type [-Wcast-align]
       (grn_cache_entry_persistent *)grn_hash_get_value_(ctx,
       ^
cache.c:806:9: warning: cast increases required alignment of target type [-Wcast-align]
         (grn_cache_entry_persistent *)grn_hash_get_value_(ctx,
         ^
cache.c: In function 'grn_cache_update_memory':
cache.c:874:9: warning: cast increases required alignment of target type [-Wcast-align]
         (grn_cache_entry_memory *)(&(cache->impl.memory));
         ^
cache.c: In function 'grn_cache_update_persistent':
cache.c:926:5: warning: cast increases required alignment of target type [-Wcast-align]
     (grn_cache_entry_persistent *)grn_hash_get_value_(ctx,
     ^
cache.c:949:7: warning: cast increases required alignment of target type [-Wcast-align]
       (grn_cache_entry_persistent *)grn_hash_get_value_(ctx,
       ^
cache.c:961:9: warning: cast increases required alignment of target type [-Wcast-align]
         (grn_cache_entry_persistent *)grn_hash_get_value_(ctx,
         ^
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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,
                ^
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o config.lo config.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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o ctx.lo ctx.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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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_loader_clear':
ctx.c:174:16: warning: cast increases required alignment of target type [-Wcast-align]
   grn_obj *v = (grn_obj *)(GRN_BULK_HEAD(&loader->values));
                ^
ctx.c:175:17: warning: cast increases required alignment of target type [-Wcast-align]
   grn_obj *ve = (grn_obj *)(GRN_BULK_CURR(&loader->values));
                 ^
ctx.c:176:17: warning: cast increases required alignment of target type [-Wcast-align]
   grn_obj **p = (grn_obj **)GRN_BULK_HEAD(&loader->columns);
                 ^
ctx.c: In function 'grn_ctx_fin':
ctx.c:456: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:766,
                 from ctx.c:19:
ctx.c: In function 'grn_content_type_parse':
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
ctx.c:919:10: note: in expansion of macro 'GRN_INT32_VALUE'
     ct = GRN_INT32_VALUE(var);
          ^~~~~~~~~~~~~~~
ctx.c: In function 'grn_ctx_use':
ctx.c:1544:26: warning: cast increases required alignment of target type [-Wcast-align]
         ctx->encoding = *(grn_encoding *)GRN_BULK_HEAD(&buf);
                          ^
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o db.lo db.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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o dump.lo dump.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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o ts.lo ts.c
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:968: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:1297: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:1313:31: warning: cast increases required alignment of target type [-Wcast-align]
           scorebuf[count] = *((double *)psubrec);
                               ^
db.c:1317: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:766,
                 from db.c:18:
db.c: In function 'grn_obj_default_set_value_hook':
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:1432: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:1489: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:1898:17: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
     source_id = GRN_UINT32_VALUE_AT(&source_ids, i);
                 ^~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1495: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:1920: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:1494: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:1941:37: note: in expansion of macro 'GRN_RECORD_VALUE_AT'
               grn_id reference_id = GRN_RECORD_VALUE_AT(&value, i);
                                     ^~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1495: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:1989: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:2373: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:766,
                 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:2375:5: note: in expansion of macro 'GRN_RSET_SUBRECS_COPY'
     GRN_RSET_SUBRECS_COPY(subrecs,size,n,c2);
     ^~~~~~~~~~~~~~~~~~~~~
db.c:2379: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:2392: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:2393: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:766,
                 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:2398: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:2401: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:2406: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:2432: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:766,
                 from db.c:18:
db.c: In function 'grn_accessor_resolve_one_index_column':
../include/groonga/groonga.h:1489: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:3143: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:37:0,
                 from grn.h:766,
                 from db.c:18:
../include/groonga/groonga.h:1494: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:3199: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:766,
                 from db.c:18:
db.c: In function 'grn_accessor_resolve':
../include/groonga/groonga.h:1495: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:3424: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:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:3657: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:3810:21: warning: cast increases required alignment of target type [-Wcast-align]
               id_ = (grn_id *)_grn_table_key(ctx, table, id, &key_size);
                     ^
db.c:3842: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:3917:29: warning: cast increases required alignment of target type [-Wcast-align]
               grn_id id = *((grn_id *)element);
                             ^
db.c:3959: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:4051:21: warning: cast increases required alignment of target type [-Wcast-align]
               id_ = (grn_id *)_grn_table_key(ctx, table, id, &key_size);
                     ^
db.c:4092: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:4252:15: warning: cast increases required alignment of target type [-Wcast-align]
         ids = (grn_id *)GRN_BULK_HEAD(key_buffer);
               ^
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o type.lo type.c
db.c: In function 'grn_uvector_get_element':
db.c:5511:21: warning: cast increases required alignment of target type [-Wcast-align]
     entries_start = (const weight_uvector_entry *)GRN_BULK_HEAD(uvector);
                     ^
db.c:5512:19: warning: cast increases required alignment of target type [-Wcast-align]
     entries_end = (const weight_uvector_entry *)GRN_BULK_CURR(uvector);
                   ^
db.c:5525:17: warning: cast increases required alignment of target type [-Wcast-align]
     ids_start = (const grn_id *)GRN_BULK_HEAD(uvector);
                 ^
db.c:5526: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:766,
                 from db.c:18:
db.c: In function 'grn_obj_cast_bool':
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6141:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6208:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();
     ^~~~~~~~~~
db.c: In function 'grn_obj_cast_record':
../include/groonga/groonga.h:1475: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:1381:26: note: in definition of macro 'GRN_RECORD_SET'
   grn_id _val = (grn_id)(val);\
                          ^~~
db.c:6318:31: note: in expansion of macro 'GRN_RECORD_VALUE'
     GRN_RECORD_SET(ctx, dest, GRN_RECORD_VALUE(src));
                               ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6343:7: note: in expansion of macro 'GRN_RECORD_VALUE'
   if (GRN_RECORD_VALUE(src) == GRN_ID_NIL) {
       ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1475: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:1381:26: note: in definition of macro 'GRN_RECORD_SET'
   grn_id _val = (grn_id)(val);\
                          ^~~
db.c:6344:31: note: in expansion of macro 'GRN_RECORD_VALUE'
     GRN_RECORD_SET(ctx, dest, GRN_RECORD_VALUE(src));
                               ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6348: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:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6141:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6259:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6368:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT8_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6141:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6259:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6371:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT8_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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1340:40: note: in definition of macro 'GRN_BOOL_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6217:5: note: in expansion of macro 'NUM2BOOL'
     tobool(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6217:23: note: in expansion of macro 'GRN_INT16_VALUE'
     tobool(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6374:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1344:36: note: in definition of macro 'GRN_INT8_SET'
   signed char _val = (signed char)(val);\
                                    ^~~
db.c:6220:29: note: in expansion of macro 'GRN_INT16_VALUE'
     GRN_INT8_SET(ctx, dest, getvalue(src));\
                             ^~~~~~~~
db.c:6374:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
../include/groonga/groonga.h:1467: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:1348:40: note: in definition of macro 'GRN_UINT8_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6223:30: note: in expansion of macro 'GRN_INT16_VALUE'
     GRN_UINT8_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6374:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1352:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
db.c:6226:30: note: in expansion of macro 'GRN_INT16_VALUE'
     GRN_INT16_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6374:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1356:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
db.c:6229:31: note: in expansion of macro 'GRN_INT16_VALUE'
     GRN_UINT16_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6374:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1360:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
db.c:6232:30: note: in expansion of macro 'GRN_INT16_VALUE'
     GRN_INT32_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6374:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1364:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
db.c:6235:31: note: in expansion of macro 'GRN_INT16_VALUE'
     GRN_UINT32_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6374:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6238:5: note: in expansion of macro 'NUM2TIME'
     totime(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6238:23: note: in expansion of macro 'GRN_INT16_VALUE'
     totime(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6374:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6241:30: note: in expansion of macro 'GRN_INT16_VALUE'
     GRN_INT64_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6374:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1372:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
db.c:6244:31: note: in expansion of macro 'GRN_INT16_VALUE'
     GRN_UINT64_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6374:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1376:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
db.c:6247:5: note: in expansion of macro 'NUM2FLOAT'
     tofloat(ctx, dest, getvalue(src));\
     ^~~~~~~
db.c:6247:24: note: in expansion of macro 'GRN_INT16_VALUE'
     tofloat(ctx, dest, getvalue(src));\
                        ^~~~~~~~
db.c:6374:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6252:23: note: in expansion of macro 'GRN_INT16_VALUE'
     totext(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6374:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6141:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6259:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6374: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1340:40: note: in definition of macro 'GRN_BOOL_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6217:5: note: in expansion of macro 'NUM2BOOL'
     tobool(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6217:23: note: in expansion of macro 'GRN_UINT16_VALUE'
     tobool(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6377: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1344:36: note: in definition of macro 'GRN_INT8_SET'
   signed char _val = (signed char)(val);\
                                    ^~~
db.c:6220:29: note: in expansion of macro 'GRN_UINT16_VALUE'
     GRN_INT8_SET(ctx, dest, getvalue(src));\
                             ^~~~~~~~
db.c:6377: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1348:40: note: in definition of macro 'GRN_UINT8_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6223:30: note: in expansion of macro 'GRN_UINT16_VALUE'
     GRN_UINT8_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6377: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1352:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
db.c:6226:30: note: in expansion of macro 'GRN_UINT16_VALUE'
     GRN_INT16_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6377: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1356:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
db.c:6229:31: note: in expansion of macro 'GRN_UINT16_VALUE'
     GRN_UINT16_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6377: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1360:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
db.c:6232:30: note: in expansion of macro 'GRN_UINT16_VALUE'
     GRN_INT32_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6377: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1364:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
db.c:6235:31: note: in expansion of macro 'GRN_UINT16_VALUE'
     GRN_UINT32_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6377: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6238:5: note: in expansion of macro 'NUM2TIME'
     totime(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6238:23: note: in expansion of macro 'GRN_UINT16_VALUE'
     totime(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6377: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6241:30: note: in expansion of macro 'GRN_UINT16_VALUE'
     GRN_INT64_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6377: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1372:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
db.c:6244:31: note: in expansion of macro 'GRN_UINT16_VALUE'
     GRN_UINT64_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6377: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1376:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
db.c:6247:5: note: in expansion of macro 'NUM2FLOAT'
     tofloat(ctx, dest, getvalue(src));\
     ^~~~~~~
db.c:6247:24: note: in expansion of macro 'GRN_UINT16_VALUE'
     tofloat(ctx, dest, getvalue(src));\
                        ^~~~~~~~
db.c:6377: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6252:23: note: in expansion of macro 'GRN_UINT16_VALUE'
     totext(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6377:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT16_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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6141:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6259:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6377:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT16_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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1340:40: note: in definition of macro 'GRN_BOOL_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6217:5: note: in expansion of macro 'NUM2BOOL'
     tobool(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6217:23: note: in expansion of macro 'GRN_INT32_VALUE'
     tobool(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6380:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1469: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:1344:36: note: in definition of macro 'GRN_INT8_SET'
   signed char _val = (signed char)(val);\
                                    ^~~
db.c:6220:29: note: in expansion of macro 'GRN_INT32_VALUE'
     GRN_INT8_SET(ctx, dest, getvalue(src));\
                             ^~~~~~~~
db.c:6380:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1469: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:1348:40: note: in definition of macro 'GRN_UINT8_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6223:30: note: in expansion of macro 'GRN_INT32_VALUE'
     GRN_UINT8_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6380:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1469: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:1352:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
db.c:6226:30: note: in expansion of macro 'GRN_INT32_VALUE'
     GRN_INT16_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6380:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1469: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:1356:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
db.c:6229:31: note: in expansion of macro 'GRN_INT32_VALUE'
     GRN_UINT16_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6380:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1469: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:1360:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
db.c:6232:30: note: in expansion of macro 'GRN_INT32_VALUE'
     GRN_INT32_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6380:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1469: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:1364:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
db.c:6235:31: note: in expansion of macro 'GRN_INT32_VALUE'
     GRN_UINT32_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6380:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1469: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:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6238:5: note: in expansion of macro 'NUM2TIME'
     totime(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6238:23: note: in expansion of macro 'GRN_INT32_VALUE'
     totime(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6380:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
../include/groonga/groonga.h:1469: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:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6241:30: note: in expansion of macro 'GRN_INT32_VALUE'
     GRN_INT64_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6380:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1469: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:1372:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
db.c:6244:31: note: in expansion of macro 'GRN_INT32_VALUE'
     GRN_UINT64_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6380:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1469: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:1376:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
db.c:6247:5: note: in expansion of macro 'NUM2FLOAT'
     tofloat(ctx, dest, getvalue(src));\
     ^~~~~~~
db.c:6247:24: note: in expansion of macro 'GRN_INT32_VALUE'
     tofloat(ctx, dest, getvalue(src));\
                        ^~~~~~~~
db.c:6380:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6252:23: note: in expansion of macro 'GRN_INT32_VALUE'
     totext(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6380:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6141:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6259:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6380:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1470: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:1340:40: note: in definition of macro 'GRN_BOOL_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6217:5: note: in expansion of macro 'NUM2BOOL'
     tobool(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6217:23: note: in expansion of macro 'GRN_UINT32_VALUE'
     tobool(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6383:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1344:36: note: in definition of macro 'GRN_INT8_SET'
   signed char _val = (signed char)(val);\
                                    ^~~
db.c:6220:29: note: in expansion of macro 'GRN_UINT32_VALUE'
     GRN_INT8_SET(ctx, dest, getvalue(src));\
                             ^~~~~~~~
db.c:6383:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1348:40: note: in definition of macro 'GRN_UINT8_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6223:30: note: in expansion of macro 'GRN_UINT32_VALUE'
     GRN_UINT8_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6383:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1352:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
db.c:6226:30: note: in expansion of macro 'GRN_UINT32_VALUE'
     GRN_INT16_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6383:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1356:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
db.c:6229:31: note: in expansion of macro 'GRN_UINT32_VALUE'
     GRN_UINT16_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6383:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1360:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
db.c:6232:30: note: in expansion of macro 'GRN_UINT32_VALUE'
     GRN_INT32_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6383:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1364:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
db.c:6235:31: note: in expansion of macro 'GRN_UINT32_VALUE'
     GRN_UINT32_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6383:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6238:5: note: in expansion of macro 'NUM2TIME'
     totime(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6238:23: note: in expansion of macro 'GRN_UINT32_VALUE'
     totime(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6383:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6241:30: note: in expansion of macro 'GRN_UINT32_VALUE'
     GRN_INT64_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6383:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1372:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
db.c:6244:31: note: in expansion of macro 'GRN_UINT32_VALUE'
     GRN_UINT64_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6383:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1376:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
db.c:6247:5: note: in expansion of macro 'NUM2FLOAT'
     tofloat(ctx, dest, getvalue(src));\
     ^~~~~~~
db.c:6247:24: note: in expansion of macro 'GRN_UINT32_VALUE'
     tofloat(ctx, dest, getvalue(src));\
                        ^~~~~~~~
db.c:6383:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6252:23: note: in expansion of macro 'GRN_UINT32_VALUE'
     totext(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6383:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6141:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6259:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6383:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1340:40: note: in definition of macro 'GRN_BOOL_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6217:5: note: in expansion of macro 'NUM2BOOL'
     tobool(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6217:23: note: in expansion of macro 'GRN_INT64_VALUE'
     tobool(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6386:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1344:36: note: in definition of macro 'GRN_INT8_SET'
   signed char _val = (signed char)(val);\
                                    ^~~
db.c:6220:29: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_INT8_SET(ctx, dest, getvalue(src));\
                             ^~~~~~~~
db.c:6386:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1348:40: note: in definition of macro 'GRN_UINT8_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6223:30: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_UINT8_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6386:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1352:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
db.c:6226:30: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_INT16_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6386:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1356:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
db.c:6229:31: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_UINT16_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6386:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1360:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
db.c:6232:30: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_INT32_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6386:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1364:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
db.c:6235:31: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_UINT32_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6386:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6238:5: note: in expansion of macro 'NUM2TIME'
     totime(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6238:23: note: in expansion of macro 'GRN_INT64_VALUE'
     totime(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6386:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6241:30: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_INT64_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6386:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1372:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
db.c:6244:31: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_UINT64_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6386:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1376:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
db.c:6247:5: note: in expansion of macro 'NUM2FLOAT'
     tofloat(ctx, dest, getvalue(src));\
     ^~~~~~~
db.c:6247:24: note: in expansion of macro 'GRN_INT64_VALUE'
     tofloat(ctx, dest, getvalue(src));\
                        ^~~~~~~~
db.c:6386:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6252:23: note: in expansion of macro 'GRN_INT64_VALUE'
     totext(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6386:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6141:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6259:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6386:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1340:40: note: in definition of macro 'GRN_BOOL_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6217:5: note: in expansion of macro 'NUM2BOOL'
     tobool(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6217:23: note: in expansion of macro 'GRN_INT64_VALUE'
     tobool(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6389:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6389:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1344:36: note: in definition of macro 'GRN_INT8_SET'
   signed char _val = (signed char)(val);\
                                    ^~~
db.c:6220:29: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_INT8_SET(ctx, dest, getvalue(src));\
                             ^~~~~~~~
db.c:6389:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6389:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1348:40: note: in definition of macro 'GRN_UINT8_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6223:30: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_UINT8_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6389:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6389:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1352:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
db.c:6226:30: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_INT16_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6389:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6389:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1356:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
db.c:6229:31: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_UINT16_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6389:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6389:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1360:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
db.c:6232:30: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_INT32_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6389:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6389:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1364:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
db.c:6235:31: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_UINT32_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6389:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6389:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6238:5: note: in expansion of macro 'TIME2TIME'
     totime(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6238:23: note: in expansion of macro 'GRN_INT64_VALUE'
     totime(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6389:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6389:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o error.lo error.c
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6241:30: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_INT64_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6389:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6389:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o expr.lo expr.c
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1372:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
db.c:6244:31: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_UINT64_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6389:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6389:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1376:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
db.c:6247:5: note: in expansion of macro 'TIME2FLOAT'
     tofloat(ctx, dest, getvalue(src));\
     ^~~~~~~
db.c:6247:24: note: in expansion of macro 'GRN_INT64_VALUE'
     tofloat(ctx, dest, getvalue(src));\
                        ^~~~~~~~
db.c:6389:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6389:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1471: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:6252:23: note: in expansion of macro 'GRN_INT64_VALUE'
     totext(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6389:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6389:14: note: in expansion of macro 'GRN_TIME_VALUE'
     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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6141:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6259:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6389:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1472: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:1340:40: note: in definition of macro 'GRN_BOOL_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6217:5: note: in expansion of macro 'NUM2BOOL'
     tobool(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6217:23: note: in expansion of macro 'GRN_UINT64_VALUE'
     tobool(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6392:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1472: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:1344:36: note: in definition of macro 'GRN_INT8_SET'
   signed char _val = (signed char)(val);\
                                    ^~~
db.c:6220:29: note: in expansion of macro 'GRN_UINT64_VALUE'
     GRN_INT8_SET(ctx, dest, getvalue(src));\
                             ^~~~~~~~
db.c:6392:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1472: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:1348:40: note: in definition of macro 'GRN_UINT8_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6223:30: note: in expansion of macro 'GRN_UINT64_VALUE'
     GRN_UINT8_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6392:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1472: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:1352:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
db.c:6226:30: note: in expansion of macro 'GRN_UINT64_VALUE'
     GRN_INT16_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6392:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1472: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:1356:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
db.c:6229:31: note: in expansion of macro 'GRN_UINT64_VALUE'
     GRN_UINT16_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6392:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1472: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:1360:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
db.c:6232:30: note: in expansion of macro 'GRN_UINT64_VALUE'
     GRN_INT32_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6392:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1472: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:1364:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
db.c:6235:31: note: in expansion of macro 'GRN_UINT64_VALUE'
     GRN_UINT32_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6392:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1472: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:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6238:5: note: in expansion of macro 'NUM2TIME'
     totime(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6238:23: note: in expansion of macro 'GRN_UINT64_VALUE'
     totime(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6392:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1472: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:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6241:30: note: in expansion of macro 'GRN_UINT64_VALUE'
     GRN_INT64_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6392:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1472: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:1372:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
db.c:6244:31: note: in expansion of macro 'GRN_UINT64_VALUE'
     GRN_UINT64_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6392:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1472: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:1376:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
db.c:6247:5: note: in expansion of macro 'NUM2FLOAT'
     tofloat(ctx, dest, getvalue(src));\
     ^~~~~~~
db.c:6247:24: note: in expansion of macro 'GRN_UINT64_VALUE'
     tofloat(ctx, dest, getvalue(src));\
                        ^~~~~~~~
db.c:6392:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1472: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:6252:23: note: in expansion of macro 'GRN_UINT64_VALUE'
     totext(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6392: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6141:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6259:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6392:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6285:19: note: in definition of macro 'FLOAT2BOOL'
   double value_ = value;\
                   ^~~~~
db.c:6217:23: note: in expansion of macro 'GRN_FLOAT_VALUE'
     tobool(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6395: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:766,
                 from db.c:18:
../include/groonga/groonga.h:1473: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:1344:36: note: in definition of macro 'GRN_INT8_SET'
   signed char _val = (signed char)(val);\
                                    ^~~
db.c:6220:29: note: in expansion of macro 'GRN_FLOAT_VALUE'
     GRN_INT8_SET(ctx, dest, getvalue(src));\
                             ^~~~~~~~
db.c:6395:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1473: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:1348:40: note: in definition of macro 'GRN_UINT8_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6223:30: note: in expansion of macro 'GRN_FLOAT_VALUE'
     GRN_UINT8_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6395:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1473: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:1352:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
db.c:6226:30: note: in expansion of macro 'GRN_FLOAT_VALUE'
     GRN_INT16_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6395:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1473: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:1356:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
db.c:6229:31: note: in expansion of macro 'GRN_FLOAT_VALUE'
     GRN_UINT16_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6395:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1473: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:1360:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
db.c:6232:30: note: in expansion of macro 'GRN_FLOAT_VALUE'
     GRN_INT32_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6395:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1473: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:1364:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
db.c:6235:31: note: in expansion of macro 'GRN_FLOAT_VALUE'
     GRN_UINT32_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6395:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6294:26: note: in definition of macro 'FLOAT2TIME'
   int64_t usec = llround(value * GRN_TIME_USEC_PER_SEC);\
                          ^~~~~
db.c:6238:23: note: in expansion of macro 'GRN_FLOAT_VALUE'
     totime(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6395: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:766,
                 from db.c:18:
../include/groonga/groonga.h:1473: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:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6241:30: note: in expansion of macro 'GRN_FLOAT_VALUE'
     GRN_INT64_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6395:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1473: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:1372:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
db.c:6244:31: note: in expansion of macro 'GRN_FLOAT_VALUE'
     GRN_UINT64_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6395:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1473: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:1376:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
db.c:6247:5: note: in expansion of macro 'FLOAT2FLOAT'
     tofloat(ctx, dest, getvalue(src));\
     ^~~~~~~
db.c:6247:24: note: in expansion of macro 'GRN_FLOAT_VALUE'
     tofloat(ctx, dest, getvalue(src));\
                        ^~~~~~~~
db.c:6395:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6252:23: note: in expansion of macro 'GRN_FLOAT_VALUE'
     totext(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6395:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6141:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6259:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6395:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6141:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6545:7: note: in expansion of macro 'SRC2RECORD'
       SRC2RECORD();
       ^~~~~~~~~~
../include/groonga/groonga.h:1478:25: warning: cast increases required alignment of target type [-Wcast-align]
   grn_geo_point *_val = (grn_geo_point *)GRN_BULK_HEAD(obj);\
                         ^
db.c:6556: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:6654:33: warning: cast increases required alignment of target type [-Wcast-align]
         value = (const char *)&((grn_rset_recinfo *)value)->score;
                                 ^
db.c:6660:33: warning: cast increases required alignment of target type [-Wcast-align]
         value = (const char *)&((grn_rset_recinfo *)value)->n_subrecs;
                                 ^
db.c:6668:51: warning: cast increases required alignment of target type [-Wcast-align]
                                                   (grn_rset_recinfo *)value,
                                                   ^
db.c:6677:51: warning: cast increases required alignment of target type [-Wcast-align]
                                                   (grn_rset_recinfo *)value,
                                                   ^
db.c:6686:51: warning: cast increases required alignment of target type [-Wcast-align]
                                                   (grn_rset_recinfo *)value,
                                                   ^
db.c:6695:51: warning: cast increases required alignment of target type [-Wcast-align]
                                                   (grn_rset_recinfo *)value,
                                                   ^
db.c:6715: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:6777: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:6786: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:6795: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:6806: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:6817: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:6828: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:6847:19: warning: cast increases required alignment of target type [-Wcast-align]
         sub_ids = (grn_id *)(GRN_BULK_HEAD(value) + size0);
                   ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:766,
                 from db.c:18:
../include/groonga/groonga.h:1494: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:6857:27: note: in expansion of macro 'GRN_RECORD_VALUE_AT'
           grn_id sub_id = GRN_RECORD_VALUE_AT(&sub_records, i);
                           ^~~~~~~~~~~~~~~~~~~
db.c: In function 'grn_accessor_set_value':
db.c:6936:18: warning: cast increases required alignment of target type [-Wcast-align]
             ri = (grn_rset_recinfo *)GRN_BULK_HEAD(&buf);
                  ^
db.c:6940: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:766,
                 from db.c:18:
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6943:29: note: in expansion of macro 'GRN_FLOAT_VALUE'
                 ri->score = GRN_FLOAT_VALUE(value);
                             ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6948:29: note: in expansion of macro 'GRN_FLOAT_VALUE'
                 ri->score = GRN_FLOAT_VALUE(&buf);
                             ^~~~~~~~~~~~~~~
db.c:6958:34: warning: cast increases required alignment of target type [-Wcast-align]
           grn_rset_recinfo *ri = (grn_rset_recinfo *)GRN_BULK_HEAD(&buf);
                                  ^
db.c:6965: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:766,
                 from db.c:18:
../include/groonga/groonga.h:1471: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:6967:55: note: in expansion of macro 'GRN_INT64_VALUE'
             grn_rset_recinfo_set_max(ctx, ri, a->obj, GRN_INT64_VALUE(value));
                                                       ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471: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:6973:40: note: in expansion of macro 'GRN_INT64_VALUE'
                                        GRN_INT64_VALUE(&value_int64));
                                        ^~~~~~~~~~~~~~~
db.c:6982: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:766,
                 from db.c:18:
../include/groonga/groonga.h:1471: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:6984: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:1471: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:6990:40: note: in expansion of macro 'GRN_INT64_VALUE'
                                        GRN_INT64_VALUE(&value_int64));
                                        ^~~~~~~~~~~~~~~
db.c:6999: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:766,
                 from db.c:18:
../include/groonga/groonga.h:1471: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:7001: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:1471: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:7007:40: note: in expansion of macro 'GRN_INT64_VALUE'
                                        GRN_INT64_VALUE(&value_int64));
                                        ^~~~~~~~~~~~~~~
db.c:7016: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:766,
                 from db.c:18:
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:7018: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:7024:40: note: in expansion of macro 'GRN_FLOAT_VALUE'
                                        GRN_FLOAT_VALUE(&value_float));
                                        ^~~~~~~~~~~~~~~
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
db.c: In function 'grn_obj_set_value_column_var_size_vector_uvector':
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:7428:21: note: in expansion of macro 'GRN_RECORD_VALUE'
         casted_id = GRN_RECORD_VALUE(&casted_record);
                     ^~~~~~~~~~~~~~~~
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
db.c: In function 'grn_token_filters_pack':
../include/groonga/groonga.h:1495: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:8397: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:8655: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:8737: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:766,
                 from db.c:18:
db.c: In function 'grn_obj_set_info_token_filters':
../include/groonga/groonga.h:1495: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:8841: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_remove':
../include/groonga/groonga.h:1495: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:9898:13: note: in expansion of macro 'GRN_PTR_VALUE_AT'
         if (GRN_PTR_VALUE_AT(space, i) == obj) {
             ^~~~~~~~~~~~~~~~
db.c: In function 'grn_ctx_at':
db.c:10416: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:766,
                 from db.c:18:
db.c: In function 'grn_pvector_fin':
../include/groonga/groonga.h:1495: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:10706: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:1476:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
db.c:10797: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:1476:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
db.c:10984:30: note: in expansion of macro 'GRN_PTR_VALUE'
           grn_obj_close(ctx, GRN_PTR_VALUE(obj));
                              ^~~~~~~~~~~~~
../include/groonga/groonga.h:1495: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:10994:30: note: in expansion of macro 'GRN_PTR_VALUE_AT'
           grn_obj *element = GRN_PTR_VALUE_AT(obj, i);
                              ^~~~~~~~~~~~~~~~
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o expr_executor.lo expr_executor.c
db.c: In function 'compare_reference':
db.c:11721:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11779:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int16_t);
       ^~~~~~
db.c:11722:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11779:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int16_t);
       ^~~~~~
db.c:11721:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11782:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int32_t);
       ^~~~~~
db.c:11722:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11782:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int32_t);
       ^~~~~~
db.c:11721:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11785:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int64_t);
       ^~~~~~
db.c:11722:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11785:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int64_t);
       ^~~~~~
db.c:11721:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11791:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint16_t);
       ^~~~~~
db.c:11722:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11791:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint16_t);
       ^~~~~~
db.c:11721:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11794:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint32_t);
       ^~~~~~
expr.c: In function 'grn_expr_dfi_pop':
expr.c:555:11: warning: cast increases required alignment of target type [-Wcast-align]
     dfi = (grn_expr_dfi *)GRN_BULK_CURR(&expr->dfi);
           ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:766,
                 from expr.c:18:
expr.c: In function 'grn_expr_close':
db.c:11722:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11794:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint32_t);
       ^~~~~~
../include/groonga/groonga.h:1545:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(type *)(GRN_BULK_CURR(obj));\
              ^
../include/groonga/groonga.h:1562:33: note: in expansion of macro 'GRN_BULK_POP'
 #define GRN_PTR_POP(obj, value) GRN_BULK_POP(obj, value, grn_obj *, NULL)
                                 ^~~~~~~~~~~~
expr.c:677: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:788: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:898:26: warning: cast increases required alignment of target type [-Wcast-align]
     grn_expr_dfi *dfis = (grn_expr_dfi *)GRN_BULK_HEAD(&e->dfi);
                          ^
db.c:11721:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11797:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint64_t);
       ^~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:766,
                 from expr.c:18:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:820:17: note: in expansion of macro 'GRN_INT32_VALUE'
         value = GRN_INT32_VALUE(x);                             \
                 ^~~~~~~~~~~~~~~
expr.c:1146:9: note: in expansion of macro 'APPEND_UNARY_MINUS_OP'
         APPEND_UNARY_MINUS_OP(e);
         ^~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:833:17: note: in expansion of macro 'GRN_UINT32_VALUE'
         value = GRN_UINT32_VALUE(x);                            \
                 ^~~~~~~~~~~~~~~~
expr.c:1146: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:846:30: note: in expansion of macro 'GRN_INT64_VALUE'
       GRN_INT64_SET(ctx, x, -GRN_INT64_VALUE(x));               \
                              ^~~~~~~~~~~~~~~
expr.c:1146:9: note: in expansion of macro 'APPEND_UNARY_MINUS_OP'
         APPEND_UNARY_MINUS_OP(e);
         ^~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473: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:1376:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:849:30: note: in expansion of macro 'GRN_FLOAT_VALUE'
       GRN_FLOAT_SET(ctx, x, -GRN_FLOAT_VALUE(x));               \
                              ^~~~~~~~~~~~~~~
expr.c:1146: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':
db.c:11722:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11797:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint64_t);
       ^~~~~~
../include/groonga/groonga.h:1476:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2515:12: note: in expansion of macro 'GRN_PTR_VALUE'
   column = GRN_PTR_VALUE(column_and_record_id);
            ^~~~~~~~~~~~~
../include/groonga/groonga.h:1495: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:2516: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:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2520:7: note: in expansion of macro 'GRN_UINT32_VALUE'
   i = GRN_UINT32_VALUE(index);
       ^~~~~~~~~~~~~~~~
db.c:11802:24: warning: cast increases required alignment of target type [-Wcast-align]
           float va = *((float *)(ap));
                        ^
../include/groonga/groonga.h:1486: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])
                                          ^
../include/groonga/groonga.h:1352:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:2545:30: note: in expansion of macro 'GRN_INT16_VALUE_AT'
                              GRN_ ## type ## _VALUE_AT(&values, i));    \
                              ^~~~
expr.c:2558:9: note: in expansion of macro 'GET_UVECTOR_ELEMENT_AS'
         GET_UVECTOR_ELEMENT_AS(INT16);
         ^~~~~~~~~~~~~~~~~~~~~~
db.c:11803:24: warning: cast increases required alignment of target type [-Wcast-align]
           float vb = *((float *)(bp));
                        ^
../include/groonga/groonga.h:1487: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])
                                           ^
../include/groonga/groonga.h:1356:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:2545:30: note: in expansion of macro 'GRN_UINT16_VALUE_AT'
                              GRN_ ## type ## _VALUE_AT(&values, i));    \
                              ^~~~
expr.c:2561:9: note: in expansion of macro 'GET_UVECTOR_ELEMENT_AS'
         GET_UVECTOR_ELEMENT_AS(UINT16);
         ^~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1488:42: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE_AT(obj,offset) (((int *)GRN_BULK_HEAD(obj))[offset])
                                          ^
../include/groonga/groonga.h:1360:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:2545:30: note: in expansion of macro 'GRN_INT32_VALUE_AT'
                              GRN_ ## type ## _VALUE_AT(&values, i));    \
                              ^~~~
expr.c:2564:9: note: in expansion of macro 'GET_UVECTOR_ELEMENT_AS'
         GET_UVECTOR_ELEMENT_AS(INT32);
         ^~~~~~~~~~~~~~~~~~~~~~
db.c:11815:25: warning: cast increases required alignment of target type [-Wcast-align]
           double va = *((double *)(ap));
                         ^
../include/groonga/groonga.h:1489: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])
                                           ^
../include/groonga/groonga.h:1364:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:2545:30: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
                              GRN_ ## type ## _VALUE_AT(&values, i));    \
                              ^~~~
expr.c:2567:9: note: in expansion of macro 'GET_UVECTOR_ELEMENT_AS'
         GET_UVECTOR_ELEMENT_AS(UINT32);
         ^~~~~~~~~~~~~~~~~~~~~~
db.c:11816:25: warning: cast increases required alignment of target type [-Wcast-align]
           double vb = *((double *)(bp));
                         ^
../include/groonga/groonga.h:1490:42: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE_AT(obj,offset) (((long long int *)GRN_BULK_HEAD(obj))[offset])
                                          ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:2545:30: note: in expansion of macro 'GRN_INT64_VALUE_AT'
                              GRN_ ## type ## _VALUE_AT(&values, i));    \
                              ^~~~
expr.c:2570:9: note: in expansion of macro 'GET_UVECTOR_ELEMENT_AS'
         GET_UVECTOR_ELEMENT_AS(INT64);
         ^~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1491:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE_AT(obj,offset) (((long long unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
../include/groonga/groonga.h:1372:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:2545:30: note: in expansion of macro 'GRN_UINT64_VALUE_AT'
                              GRN_ ## type ## _VALUE_AT(&values, i));    \
                              ^~~~
expr.c:2573:9: note: in expansion of macro 'GET_UVECTOR_ELEMENT_AS'
         GET_UVECTOR_ELEMENT_AS(UINT64);
         ^~~~~~~~~~~~~~~~~~~~~~
db.c: In function 'compare_value':
../include/groonga/groonga.h:1492:42: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE_AT(obj,offset) (((double *)GRN_BULK_HEAD(obj))[offset])
                                          ^
../include/groonga/groonga.h:1376:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:2545:30: note: in expansion of macro 'GRN_FLOAT_VALUE_AT'
                              GRN_ ## type ## _VALUE_AT(&values, i));    \
                              ^~~~
expr.c:2576:9: note: in expansion of macro 'GET_UVECTOR_ELEMENT_AS'
         GET_UVECTOR_ELEMENT_AS(FLOAT);
         ^~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1490:42: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE_AT(obj,offset) (((long long int *)GRN_BULK_HEAD(obj))[offset])
                                          ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
../include/groonga/groonga.h:1493:27: note: in expansion of macro 'GRN_INT64_VALUE_AT'
 #define GRN_TIME_VALUE_AT GRN_INT64_VALUE_AT
                           ^~~~~~~~~~~~~~~~~~
expr.c:2545:30: note: in expansion of macro 'GRN_TIME_VALUE_AT'
                              GRN_ ## type ## _VALUE_AT(&values, i));    \
                              ^~~~
expr.c:2579:9: note: in expansion of macro 'GET_UVECTOR_ELEMENT_AS'
         GET_UVECTOR_ELEMENT_AS(TIME);
         ^~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1494: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/groonga.h:1381:26: note: in definition of macro 'GRN_RECORD_SET'
   grn_id _val = (grn_id)(val);\
                          ^~~
expr.c:2545:30: note: in expansion of macro 'GRN_RECORD_VALUE_AT'
                              GRN_ ## type ## _VALUE_AT(&values, i));    \
                              ^~~~
expr.c:2582:9: note: in expansion of macro 'GET_UVECTOR_ELEMENT_AS'
         GET_UVECTOR_ELEMENT_AS(RECORD);
         ^~~~~~~~~~~~~~~~~~~~~~
db.c:11721:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:12015:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int16_t);
       ^~~~~~
expr.c: In function 'grn_expr_exec':
../include/groonga/groonga.h:1475: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:1519:38: note: in definition of macro 'GRN_UINT32_PUT'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:2736:38: note: in expansion of macro 'GRN_RECORD_VALUE'
             GRN_UINT32_PUT(ctx, res, GRN_RECORD_VALUE(rec));
                                      ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:358:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2798:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           obj = GRN_OBJ_RESOLVE(ctx, obj);
                 ^~~~~~~~~~~~~~~
db.c:11722:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:12015:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int16_t);
       ^~~~~~
../include/groonga/groonga.h:1476: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:359:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2798:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           obj = GRN_OBJ_RESOLVE(ctx, obj);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:358:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2813:24: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           value_type = GRN_OBJ_RESOLVE(ctx, value_type);
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:359:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2813:24: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           value_type = GRN_OBJ_RESOLVE(ctx, value_type);
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:358:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2815:22: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           key_type = GRN_OBJ_RESOLVE(ctx, key_type);
                      ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:359:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2815:22: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           key_type = GRN_OBJ_RESOLVE(ctx, key_type);
                      ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:358:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2817:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           flags = GRN_OBJ_RESOLVE(ctx, flags);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:359:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2817:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           flags = GRN_OBJ_RESOLVE(ctx, flags);
                   ^~~~~~~~~~~~~~~
db.c:11721:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:12018:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int32_t);
       ^~~~~~
../include/groonga/groonga.h:1476: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:358:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2819:18: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           name = GRN_OBJ_RESOLVE(ctx, name);
                  ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:359:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2819:18: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           name = GRN_OBJ_RESOLVE(ctx, name);
                  ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2821:40: note: in expansion of macro 'GRN_UINT32_VALUE'
                                  NULL, GRN_UINT32_VALUE(flags),
                                        ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:358:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2832:18: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           name = GRN_OBJ_RESOLVE(ctx, name);
                  ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:359:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2832:18: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           name = GRN_OBJ_RESOLVE(ctx, name);
                  ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:358:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2834:18: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           expr = GRN_OBJ_RESOLVE(ctx, expr);
                  ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:359:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2834:18: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           expr = GRN_OBJ_RESOLVE(ctx, expr);
                  ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2837: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:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2840:72: note: in expansion of macro 'GRN_UINT32_VALUE'
             res = grn_expr_get_var_by_offset(ctx, expr, (unsigned int) GRN_UINT32_VALUE(name));
                                                                        ^~~~~~~~~~~~~~~~
db.c:11722:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:12018:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int32_t);
       ^~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2843: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:1472: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:2846: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:1476: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:358:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2870:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           value = GRN_OBJ_RESOLVE(ctx, value);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:359:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2870:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           value = GRN_OBJ_RESOLVE(ctx, value);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2875:28: note: in expansion of macro 'GRN_PTR_VALUE'
             grn_obj *col = GRN_PTR_VALUE(var);
                            ^~~~~~~~~~~~~
expr.c:2876:27: warning: cast increases required alignment of target type [-Wcast-align]
             grn_id rid = *(grn_id *)(GRN_BULK_HEAD(var) + sizeof(grn_obj *));
                           ^
db.c:11721:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:12021:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int64_t);
       ^~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:766,
                 from expr.c:18:
../include/groonga/groonga.h:1476:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2464:20: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *col = GRN_PTR_VALUE(var);                                  \
                    ^~~~~~~~~~~~~
expr.c:2886:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
expr.c:2465: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:2886: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:766,
                 from expr.c:18:
../include/groonga/groonga.h:1476: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:358:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2469:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2886:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1476: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:359:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2469:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2886:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
db.c:11722:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:12021:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int64_t);
       ^~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
db.c:11721:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:12027:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint16_t);
       ^~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
db.c:11722:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:12027:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint16_t);
       ^~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
db.c:11721:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:12030:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint32_t);
       ^~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
db.c:11722:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:12030:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint32_t);
       ^~~~~~
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1818:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
db.c:11721:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:12033:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint64_t);
       ^~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
db.c:11722:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:12033:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint64_t);
       ^~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
db.c:12038:24: warning: cast increases required alignment of target type [-Wcast-align]
           float va = *((float *)(ap));
                        ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
db.c:12039:24: warning: cast increases required alignment of target type [-Wcast-align]
           float vb = *((float *)(bp));
                        ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
db.c:12051:25: warning: cast increases required alignment of target type [-Wcast-align]
           double va = *((double *)(ap));
                         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
db.c:12052:25: warning: cast increases required alignment of target type [-Wcast-align]
           double vb = *((double *)(bp));
                         ^
../include/groonga/groonga.h:1467: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:1352:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1832:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1356:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1846:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c expr_executor.c  -fPIC -DPIC -o .libs/expr_executor.o
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
db.c: In function 'grn_ctx_push_temporary_open_space':
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
db.c:14014: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':
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
db.c:14044: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:766,
                 from db.c:18:
db.c: In function 'grn_ctx_merge_temporary_open_space':
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1495: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:14074:26: note: in expansion of macro 'GRN_PTR_VALUE_AT'
       grn_obj *element = GRN_PTR_VALUE_AT(space, i);
                          ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
db.c:14085:14: warning: cast increases required alignment of target type [-Wcast-align]
     space = ((grn_obj *)GRN_BULK_CURR(stack)) - 1;
              ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1360:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1860:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1364:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1874:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1888:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o file_lock.lo file_lock.c
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1891:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1902:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1372:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1916:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473: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:1376:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1767:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2886:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1476:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2464:20: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *col = GRN_PTR_VALUE(var);                                  \
                    ^~~~~~~~~~~~~
expr.c:2900:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
expr.c:2465: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:2900: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:766,
                 from expr.c:18:
../include/groonga/groonga.h:1476: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:358:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2469:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2900:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1476: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:359:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2469:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2900: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1818:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1352:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SLASH'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1832:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1356:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SLASH'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1846:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1360:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SLASH'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1860:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1364:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SLASH'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1874:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SLASH'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1888:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SLASH'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1891:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1902:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1372:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SLASH'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c file_lock.c  -fPIC -DPIC -o .libs/file_lock.o
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1916:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473: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:1376:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1767:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_SLASH'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2900:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1476:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2464:20: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *col = GRN_PTR_VALUE(var);                                  \
                    ^~~~~~~~~~~~~
expr.c:2914:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
expr.c:2465: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:2914: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:766,
                 from expr.c:18:
../include/groonga/groonga.h:1476: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:358:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2469:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2914:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1476: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:359:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2469:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2914: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1818:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1352:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MOD'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1832:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1356:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MOD'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o geo.lo geo.c
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1846:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1360:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MOD'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1860:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1364:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MOD'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1874:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MOD'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1888:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MOD'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1891:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1902:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1372:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MOD'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1916:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473: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:1376:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1767:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_MOD'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2914:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1476:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2464:20: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *col = GRN_PTR_VALUE(var);                                  \
                    ^~~~~~~~~~~~~
expr.c:2928:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
expr.c:2465: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:2928: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:766,
                 from expr.c:18:
../include/groonga/groonga.h:1476: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:358:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2469:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2928:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1476: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:359:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2469:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2928: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1818:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1352:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1832:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1356:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1846:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1360:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1860:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1364:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1874:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1888:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1891:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1902:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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:19:
geo.c: In function 'compute_min_and_max':
grn.h:702:27: warning: cast increases required alignment of target type [-Wcast-align]
   grn_geo_point *point_ = (grn_geo_point *)keybuf;\
                           ^
geo.c:127:5: note: in expansion of macro 'grn_ntog'
     grn_ntog((uint8_t *)geo_min, geo_key_min, sizeof(grn_geo_point));
     ^~~~~~~~
grn.h:703:20: warning: cast increases required alignment of target type [-Wcast-align]
   uint64_t key_ = *(const uint64_t *)key;\
                    ^
geo.c:127:5: note: in expansion of macro 'grn_ntog'
     grn_ntog((uint8_t *)geo_min, geo_key_min, sizeof(grn_geo_point));
     ^~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
grn.h:702:27: warning: cast increases required alignment of target type [-Wcast-align]
   grn_geo_point *point_ = (grn_geo_point *)keybuf;\
                           ^
geo.c:130:5: note: in expansion of macro 'grn_ntog'
     grn_ntog((uint8_t *)geo_max, geo_key_max, sizeof(grn_geo_point));
     ^~~~~~~~
grn.h:703:20: warning: cast increases required alignment of target type [-Wcast-align]
   uint64_t key_ = *(const uint64_t *)key;\
                    ^
geo.c:130: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:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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:759: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:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1372:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1916:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
In file included from geo.c:19: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:942:12: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
   center = GRN_GEO_POINT_VALUE_RAW(center_point);
            ^~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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:766,
                 from grn_geo.h:21,
                 from geo.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
geo.c:957:9: note: in expansion of macro 'GRN_INT32_VALUE'
     d = GRN_INT32_VALUE(distance);
         ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
geo.c:962:9: note: in expansion of macro 'GRN_UINT32_VALUE'
     d = GRN_UINT32_VALUE(distance);
         ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471: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:967:9: note: in expansion of macro 'GRN_INT64_VALUE'
     d = GRN_INT64_VALUE(distance);
         ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:972:9: note: in expansion of macro 'GRN_UINT64_VALUE'
     d = GRN_UINT64_VALUE(distance);
         ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
geo.c:977:9: note: in expansion of macro 'GRN_FLOAT_VALUE'
     d = GRN_FLOAT_VALUE(distance);
         ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1478:25: warning: cast increases required alignment of target type [-Wcast-align]
   grn_geo_point *_val = (grn_geo_point *)GRN_BULK_HEAD(obj);\
                         ^
geo.c:994: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
In file included from geo.c:19: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:1151:20: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
   data->top_left = GRN_GEO_POINT_VALUE_RAW(top_left_point);
                    ^~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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:1166: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:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928: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:19:
geo.c: In function 'grn_geo_cursor_entry_next_push':
../include/groonga/groonga.h:1473: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:1376:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1767:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2928:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
grn.h:702:27: warning: cast increases required alignment of target type [-Wcast-align]
   grn_geo_point *point_ = (grn_geo_point *)keybuf;\
                           ^
geo.c:1622:3: note: in expansion of macro 'grn_ntog'
   grn_ntog((uint8_t*)(&entry_base), entry->key, sizeof(grn_geo_point));
   ^~~~~~~~
grn.h:703:20: warning: cast increases required alignment of target type [-Wcast-align]
   uint64_t key_ = *(const uint64_t *)key;\
                    ^
geo.c:1622:3: note: in expansion of macro 'grn_ntog'
   grn_ntog((uint8_t*)(&entry_base), entry->key, sizeof(grn_geo_point));
   ^~~~~~~~
../include/groonga/groonga.h:1476:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2464:20: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *col = GRN_PTR_VALUE(var);                                  \
                    ^~~~~~~~~~~~~
expr.c:2942:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
geo.c: In function 'grn_geo_cursor_each':
expr.c:2465: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:2942:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
grn.h:702:27: warning: cast increases required alignment of target type [-Wcast-align]
   grn_geo_point *point_ = (grn_geo_point *)keybuf;\
                           ^
geo.c:1913:7: note: in expansion of macro 'grn_ntog'
       grn_ntog((uint8_t*)(&entry_base), entry.key, sizeof(grn_geo_point));
       ^~~~~~~~
grn.h:703:20: warning: cast increases required alignment of target type [-Wcast-align]
   uint64_t key_ = *(const uint64_t *)key;\
                    ^
geo.c:1913:7: note: in expansion of macro 'grn_ntog'
       grn_ntog((uint8_t*)(&entry_base), entry.key, sizeof(grn_geo_point));
       ^~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:766,
                 from expr.c:18:
../include/groonga/groonga.h:1476: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:358:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2469:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2942:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1476: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:359:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2469:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2942:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
In file included from geo.c:19: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:2194:27: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                           GRN_GEO_POINT_VALUE_RAW(point),
                           ^~~~~~~~~~~~~~~~~~~~~~~
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;
        ^
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:2195:27: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                           GRN_GEO_POINT_VALUE_RAW(center));
                           ^~~~~~~~~~~~~~~~~~~~~~~
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':
In file included from ../include/groonga.h:22:0,
                 from grn.h:766,
                 from grn_geo.h:21,
                 from geo.c:19:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
geo.c:2198:16: note: in expansion of macro 'GRN_INT32_VALUE'
       r = d <= GRN_INT32_VALUE(radius_or_point);
                ^~~~~~~~~~~~~~~
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':
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
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:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
geo.c:2201:16: note: in expansion of macro 'GRN_UINT32_VALUE'
       r = d <= GRN_UINT32_VALUE(radius_or_point);
                ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471: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:2204:16: note: in expansion of macro 'GRN_INT64_VALUE'
       r = d <= GRN_INT64_VALUE(radius_or_point);
                ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1472: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:2207:16: note: in expansion of macro 'GRN_UINT64_VALUE'
       r = d <= GRN_UINT64_VALUE(radius_or_point);
                ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
geo.c:2210:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
       r = d <= GRN_FLOAT_VALUE(radius_or_point);
                ^~~~~~~~~~~~~~~
In file included from geo.c:19: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:2223:34: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                                  GRN_GEO_POINT_VALUE_RAW(radius_or_point),
                                  ^~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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:2224: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:2285:34: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                                  GRN_GEO_POINT_VALUE_RAW(point),
                                  ^~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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:2286: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:2287:34: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                                  GRN_GEO_POINT_VALUE_RAW(bottom_right));
                                  ^~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
hash.c: In function 'pack':
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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:3132:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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:3132:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
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:2716:38: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                                      GRN_GEO_POINT_VALUE_RAW(point1),
                                      ^~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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:3132:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
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:2717: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':
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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:2743:37: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                                     GRN_GEO_POINT_VALUE_RAW(point1),
                                     ^~~~~~~~~~~~~~~~~~~~~~~
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)) {
         ^~~~~~~~~~~
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:2744: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':
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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:2771:48: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                                                GRN_GEO_POINT_VALUE_RAW(point1),
                                                ^~~~~~~~~~~~~~~~~~~~~~~
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)) {
         ^~~~~~~~~~~
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:2772:48: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                                                GRN_GEO_POINT_VALUE_RAW(point2));
                                                ^~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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:2775: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:2776:48: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                                                GRN_GEO_POINT_VALUE_RAW(point2));
                                                ^~~~~~~~~~~~~~~~~~~~~~~
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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1818:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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:3132: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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:3132:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c: In function 'part':
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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:3167:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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)) {
       ^~~~~~~~~~~
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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1352:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1832:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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:3167:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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:3167:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, 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: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:1468: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:1356:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1846:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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:3173:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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:3173:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1360:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1860:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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:3173:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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:1470: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:1364:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1874:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1888:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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:3176:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1891:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1902:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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:1472: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:1372:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1916:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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:3189:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
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));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1473: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:1376:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1767:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2942: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:3189:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1476:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2464:20: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *col = GRN_PTR_VALUE(var);                                  \
                    ^~~~~~~~~~~~~
expr.c:2956:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
expr.c:2465: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:2956: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));
              ^~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:766,
                 from expr.c:18:
../include/groonga/groonga.h:1476: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:358:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2469:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2956:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1476: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:359:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2469:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2956: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: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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:3189:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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:3193:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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:3193:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1818:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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:3193:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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:3193:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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:3193:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1467: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:1352:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1832:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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:3193:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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: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:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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);
   ^~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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);
     ^~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1356:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1846:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1360:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1860:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1364:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1874:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1888:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1891:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1902:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1372:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1916:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473: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:1376:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1767:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2956:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1476:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2464:20: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *col = GRN_PTR_VALUE(var);                                  \
                    ^~~~~~~~~~~~~
expr.c:2970:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
expr.c:2465: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:2970: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:766,
                 from expr.c:18:
../include/groonga/groonga.h:1476: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:358:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2469:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2970:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1476: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:359:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2469:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2970: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1818:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1352:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1832:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1356:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1846:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1360:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1860:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1364:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1874:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1888:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1891:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1902:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1372:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1916:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473: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:1376:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1767:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2970:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1476:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2464:20: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *col = GRN_PTR_VALUE(var);                                  \
                    ^~~~~~~~~~~~~
expr.c:2984:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
expr.c:2465: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:2984: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:766,
                 from expr.c:18:
../include/groonga/groonga.h:1476: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:358:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2469:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2984:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1476: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:359:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2469:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2984: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1818:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1352:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER16_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1832:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1356:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER16_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1846:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1360:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER32_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1860:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1364:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER32_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1874:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER64_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1888:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER64_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1891:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1902:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1372:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER64_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1916:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473: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:1376:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1767:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2984:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1476:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2464:20: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *col = GRN_PTR_VALUE(var);                                  \
                    ^~~~~~~~~~~~~
expr.c:2999:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
expr.c:2465: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:2999: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:766,
                 from expr.c:18:
../include/groonga/groonga.h:1476: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:358:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2469:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2999:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1476: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:359:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2469:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2999: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1818:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1352:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1832:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1356:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1846:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1360:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1860:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1364:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1874:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1888:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1891:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1902:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1372:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1916:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473: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:1376:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1767:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2999:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1476:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2464:20: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *col = GRN_PTR_VALUE(var);                                  \
                    ^~~~~~~~~~~~~
expr.c:3013:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
expr.c:2465: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:3013: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:766,
                 from expr.c:18:
../include/groonga/groonga.h:1476: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:358:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2469:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:3013:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1476: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:359:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2469:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:3013: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1818:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1352:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1832:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1356:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1846:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1360:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1860:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1364:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1874:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1888:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1891:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1902:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1372:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1916:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473: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:1376:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1767:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3013:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1476:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2464:20: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *col = GRN_PTR_VALUE(var);                                  \
                    ^~~~~~~~~~~~~
expr.c:3027:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
expr.c:2465: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:3027: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:766,
                 from expr.c:18:
../include/groonga/groonga.h:1476: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:358:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:2469:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:3027:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1476: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:359:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2469:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:3027: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1818:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1352:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1832:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1356:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1846:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1360:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1860:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1364:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1874:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1888:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1891:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1902:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1372:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1916:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1473: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:1376:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1767:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2484:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3027:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:3084:41: note: in expansion of macro 'GRN_RECORD_VALUE'
             grn_obj_get_value(ctx, col, GRN_RECORD_VALUE(rec), res);
                                         ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:358:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:3096:16: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           op = GRN_OBJ_RESOLVE(ctx, op);
                ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:359:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:3096:16: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           op = GRN_OBJ_RESOLVE(ctx, op);
                ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:358:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:3098:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           res = GRN_OBJ_RESOLVE(ctx, res);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:359:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:3098:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           res = GRN_OBJ_RESOLVE(ctx, res);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:358:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:3100:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           query = GRN_OBJ_RESOLVE(ctx, query);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:359:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:3100:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           query = GRN_OBJ_RESOLVE(ctx, query);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:358:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:3102:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           index = GRN_OBJ_RESOLVE(ctx, index);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:359:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:3102:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           index = GRN_OBJ_RESOLVE(ctx, index);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:3104:40: note: in expansion of macro 'GRN_UINT32_VALUE'
                          (grn_operator)GRN_UINT32_VALUE(op), NULL);
                                        ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:358:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:3115:16: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           op = GRN_OBJ_RESOLVE(ctx, op);
                ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:359:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:3115:16: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           op = GRN_OBJ_RESOLVE(ctx, op);
                ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:358:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:3117:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           res = GRN_OBJ_RESOLVE(ctx, res);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:359:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:3117:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           res = GRN_OBJ_RESOLVE(ctx, res);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:358:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:3119:18: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           expr = GRN_OBJ_RESOLVE(ctx, expr);
                  ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:359:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:3119:18: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           expr = GRN_OBJ_RESOLVE(ctx, expr);
                  ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:358:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:3121:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           table = GRN_OBJ_RESOLVE(ctx, table);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:359:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:3121:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           table = GRN_OBJ_RESOLVE(ctx, table);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1447:3: note: in definition of macro 'WITH_SPSAVE'
   block\
   ^~~~~~
   vp = e->values + e->values_curr;\
    
expr.c:3123: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:766,
                 from expr.c:18:
../include/groonga/groonga.h:1476: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:358:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:3136:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           keys_ = GRN_OBJ_RESOLVE(ctx, keys_);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:359:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:3136:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           keys_ = GRN_OBJ_RESOLVE(ctx, keys_);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:358:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:3138:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           res = GRN_OBJ_RESOLVE(ctx, res);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:359:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:3138:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           res = GRN_OBJ_RESOLVE(ctx, res);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:358:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:3140:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           limit = GRN_OBJ_RESOLVE(ctx, limit);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:359:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:3140:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           limit = GRN_OBJ_RESOLVE(ctx, limit);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:358:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:3142:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           table = GRN_OBJ_RESOLVE(ctx, table);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:359:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:3142:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           table = GRN_OBJ_RESOLVE(ctx, table);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1447:3: note: in definition of macro 'WITH_SPSAVE'
   block\
   ^~~~~~
   vp = e->values + e->values_curr;\
    
expr.c:3165: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:766,
                 from expr.c:18:
../include/groonga/groonga.h:1476: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:358:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:3182:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           res = GRN_OBJ_RESOLVE(ctx, res);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:359:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:3182:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           res = GRN_OBJ_RESOLVE(ctx, res);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:358:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:3184:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           keys_ = GRN_OBJ_RESOLVE(ctx, keys_);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:359:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:3184:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           keys_ = GRN_OBJ_RESOLVE(ctx, keys_);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:358:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:3186:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           table = GRN_OBJ_RESOLVE(ctx, table);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:359:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:3186:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           table = GRN_OBJ_RESOLVE(ctx, table);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:358:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:3237:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           res = GRN_OBJ_RESOLVE(ctx, res);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:359:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:3237:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           res = GRN_OBJ_RESOLVE(ctx, res);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:358:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:3239:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           str = GRN_OBJ_RESOLVE(ctx, str);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:359:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:3239:17: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           str = GRN_OBJ_RESOLVE(ctx, str);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:358:6: note: in expansion of macro 'GRN_PTR_VALUE'
    : GRN_PTR_VALUE(obj)\
      ^~~~~~~~~~~~~
expr.c:3241:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           table = GRN_OBJ_RESOLVE(ctx, table);
                   ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1476: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:359:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:3241:19: note: in expansion of macro 'GRN_OBJ_RESOLVE'
           table = GRN_OBJ_RESOLVE(ctx, table);
                   ^~~~~~~~~~~~~~~
In file included from ../include/groonga.h:42:0,
                 from grn.h:766,
                 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:3247:11: note: in expansion of macro 'GRN_OBJ_FORMAT_FIN'
           GRN_OBJ_FORMAT_FIN(ctx, &format);
           ^~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1463:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3448:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1463:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3450:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1463:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3452:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng2 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1463:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3454:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat2 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1463:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3469:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1463:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3471:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1463:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3473:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng2 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1463:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3475:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat2 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1463:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3490:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1463:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3492:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1463:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3494:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng2 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1463:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3496:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat2 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1463:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3515:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1463:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3517:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1463:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3519:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng2 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1463:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3521:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat2 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1463:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3541:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng0 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1463:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3543:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat0 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1463:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3545:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1463:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3547: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:766,
                 from expr.c:18:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:3554:22: note: in expansion of macro 'GRN_INT32_VALUE'
             r = d <= GRN_INT32_VALUE(value);
                      ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:3557:22: note: in expansion of macro 'GRN_FLOAT_VALUE'
             r = d <= GRN_FLOAT_VALUE(value);
                      ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1463:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3575:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng0 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1463:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3577:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat0 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1463:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3579:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1463:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3581:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lat1 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1463:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3583:30: note: in expansion of macro 'GRN_INT32_VALUE'
           lng2 = GEO_INT2RAD(GRN_INT32_VALUE(value));
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1463:35: note: in definition of macro 'GEO_INT2RAD'
 #define GEO_INT2RAD(x)   ((M_PI * x) / (GEO_RESOLUTION * 180))
                                   ^
expr.c:3585: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:766,
                 from expr.c:18:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:3604:17: note: in expansion of macro 'GRN_INT32_VALUE'
           ln0 = GRN_INT32_VALUE(value);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:3606:17: note: in expansion of macro 'GRN_INT32_VALUE'
           la0 = GRN_INT32_VALUE(value);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:3608:17: note: in expansion of macro 'GRN_INT32_VALUE'
           ln1 = GRN_INT32_VALUE(value);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:3610:17: note: in expansion of macro 'GRN_INT32_VALUE'
           la1 = GRN_INT32_VALUE(value);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:3612:17: note: in expansion of macro 'GRN_INT32_VALUE'
           ln2 = GRN_INT32_VALUE(value);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:3614:17: note: in expansion of macro 'GRN_INT32_VALUE'
           la2 = GRN_INT32_VALUE(value);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:3616:17: note: in expansion of macro 'GRN_INT32_VALUE'
           ln3 = GRN_INT32_VALUE(value);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:3618:17: note: in expansion of macro 'GRN_INT32_VALUE'
           la3 = GRN_INT32_VALUE(value);
                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1818:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1352:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1832:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1356:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1846:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1360:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1860:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1364:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1874:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1888:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
ii.c: In function 'buffer_open':
ii.c:2180:19: warning: cast increases required alignment of target type [-Wcast-align]
     if (b) { *b = (buffer *)p; }
                   ^
ii.c:2181:21: warning: cast increases required alignment of target type [-Wcast-align]
     if (bt) { *bt = (buffer_term *)(p + LPOS(pos)); }
                     ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1891:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1902:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
ii.c: In function 'array_at':
ii.c:2483:10: warning: cast increases required alignment of target type [-Wcast-align]
   return (uint32_t *)(p + (id & ARRAY_MASK_IN_A_SEGMENT) * S_ARRAY_ELEMENT);
          ^
ii.c: In function 'array_get':
ii.c:2501: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:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1372:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1916:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473: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:1376:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1767:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_PLUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3627: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2289:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:3657: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2297:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:3657:11: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
           ARITHMETIC_UNARY_OPERATION_DISPATCH(
           ^
ii.c: In function 'buffer_new':
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2306:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:3657:11: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
           ARITHMETIC_UNARY_OPERATION_DISPATCH(
           ^
ii.c:4225: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:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2314:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:3657: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2323:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:3657: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2331:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:3657:11: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
           ARITHMETIC_UNARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1472: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:2339:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:3657:11: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
           ARITHMETIC_UNARY_OPERATION_DISPATCH(
           ^
ii.c: In function 'grn_ii_update_one':
ii.c:4657:14: warning: cast increases required alignment of target type [-Wcast-align]
         br = (buffer_rec *)(((byte *)&b->terms[b->header.nterms])
              ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2358:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:3657: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2366:5: note: in definition of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3670:20: note: in expansion of macro 'GRN_INT64_VALUE'
               x_ = GRN_INT64_VALUE(res);
                    ^~~~~~~~~~~~~~~
ii.c:4720:16: warning: cast increases required alignment of target type [-Wcast-align]
           br = (buffer_rec *)(((byte *)br) + size2);
                ^
ii.c: In function 'grn_ii_delete_one':
ii.c:4907:10: warning: cast increases required alignment of target type [-Wcast-align]
     br = (buffer_rec *)(((byte *)&b->terms[b->header.nterms]) + b->header.buffer_free);
          ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:766,
                 from expr.c:18:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676:11: 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:766,
                 from ii.c:18:
ii.c: In function 'grn_ii_column_update':
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
ii.c:6453:50: note: in expansion of macro 'GRN_RECORD_VALUE'
           grn_uvector_add_element(ctx, &uvector, GRN_RECORD_VALUE(new_),
                                                  ^~~~~~~~~~~~~~~~
ii.c:6500:11: warning: cast increases required alignment of target type [-Wcast-align]
     tpe = (grn_id *)GRN_BULK_CURR(post);
           ^
ii.c:6501: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:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676:11: 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:766,
                 from ii.c:18:
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
ii.c:6566:50: note: in expansion of macro 'GRN_RECORD_VALUE'
           grn_uvector_add_element(ctx, &uvector, GRN_RECORD_VALUE(old_),
                                                  ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1818:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1352:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1832:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1356:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1846:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1360:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1860:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1364:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1874:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
ii.c: In function 'grn_ii_builder_append_value':
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
ii.c:12010:16: warning: cast increases required alignment of target type [-Wcast-align]
         tid = *(grn_id *)value;
                ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1888:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1891:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1472: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:1902:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1472: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:1372:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1916:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676:11: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
           ARITHMETIC_BINARY_OPERATION_DISPATCH(
           ^
../include/groonga/groonga.h:1473: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:1376:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1767:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_MINUS'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3676: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1818:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1352:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1832:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1356:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1846:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1360:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1860:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1364:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1874:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1888:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1891:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1902:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1372:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1916:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473: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:1376:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1767:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_STAR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3695: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2020:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2111:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2028:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2111:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2036:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2111:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2044:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2111:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2052:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2111:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2060:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2111:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1472: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:2068:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2111:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2076:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2111:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2020:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2123:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2028:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2123:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2036:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2123:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2044:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2123:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2052:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2123:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2060:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2123:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1472: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:2068:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2123:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2076:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2123:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2134:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2020:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2135:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2028:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2135:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2036:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2135:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2044:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2135:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2052:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2135:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2060:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2135:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1472: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:2068:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2135:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2076:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2135:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1352:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:2094:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2094:49: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2135:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1352:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:2094:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2094:49: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2135:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2146:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2020:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2147:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2028:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2147:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2036:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2147:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2044:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2147:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2052:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2147:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2060:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2147:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1472: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:2068:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2147:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2076:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2147:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1356:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:2094:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2094:49: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2147:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1356:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:2094:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2094:49: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2147:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2158:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2020:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2159:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2028:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2159:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2036:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2159:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2044:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2159:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2052:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2159:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2060:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2159:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1472: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:2068:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2159:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2076:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2159:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1360:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:2094:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2094:49: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2159:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1360:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:2094:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2094:49: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2159:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2170:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2020:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2171:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2028:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2171:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2036:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2171:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2044:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2171:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2052:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2171:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2060:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2171:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1472: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:2068:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2171:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2076:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2171:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1364:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:2094:19: note: in expansion of macro 'UNSIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2094:49: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2171:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2182:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2020:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2183:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2028:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2183:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2036:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2183:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2044:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2183:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2052:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2183:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2060:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2183:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1472: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:2068:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2183:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2076:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2183:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:2094:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2094:49: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2183:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:2094:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2094:49: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2183:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2194:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2020:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2195:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2028:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2195:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2036:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2195:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2044:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2195:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2052:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2195:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2060:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2195:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1472: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:2068:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2195:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2076:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2195:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:2094:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2094:49: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2195:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2196:41: note: in expansion of macro 'GRN_TIME_VALUE'
                                         GRN_TIME_VALUE,                 \
                                         ^~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:2094:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2094:49: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2195:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2196:41: note: in expansion of macro 'GRN_TIME_VALUE'
                                         GRN_TIME_VALUE,                 \
                                         ^~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1472: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:2206:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2020:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2207:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2028:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2207:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2036:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2207:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2044:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2207:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2052:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2207:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2060:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2207:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1472: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:2068:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2207:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o index_column.lo index_column.c
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2076:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2207:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1472: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:1372:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:2094:19: note: in expansion of macro 'UNSIGNED_INTEGER_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2094:49: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2207:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2218:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2020:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2219:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2028:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2219:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2036:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2219:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2044:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2219:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2052:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2219:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2060:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2219:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1472: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:2068:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2219:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2076:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2219:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473: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:1376:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:2094:19: note: in expansion of macro 'FLOAT_DIVISION_OPERATION_SLASH'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2094:49: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2219:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3713: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2020:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2111:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2028:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2111:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2036:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2111:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2044:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2111:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2052:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2111:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2060:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2111:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1472: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:2068:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2111:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2076:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2111:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT8_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2020:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2123:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2028:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2123:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2036:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2123:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2044:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2123:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2052:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2123:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2060:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2123:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1472: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:2068:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2123:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2076:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2123:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT8_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2134:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2020:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2135:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2028:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2135:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2036:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2135:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2044:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2135:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2052:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2135:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2060:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2135:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1472: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:2068:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2135:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2076:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2135:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1352:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:2094:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2094:49: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2135:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1352:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:2094:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2094:49: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2135:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT16_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2146:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2020:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2147:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2028:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2147:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2036:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2147:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2044:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2147:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2052:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2147:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2060:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2147:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1472: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:2068:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2147:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2076:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2147:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1356:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:2094:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2094:49: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2147:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1356:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:2094:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2094:49: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2147:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT16_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2158:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2020:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2159:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2028:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2159:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2036:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2159:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2044:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2159:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2052:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2159:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2060:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2159:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1472: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:2068:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2159:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2076:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2159:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1360:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:2094:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2094:49: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2159:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1360:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:2094:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2094:49: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2159:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT32_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2170:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2020:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2171:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2028:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2171:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2036:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2171:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2044:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2171:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2052:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2171:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2060:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2171:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1472: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:2068:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2171:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2076:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2171:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1364:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:2094:19: note: in expansion of macro 'UNSIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2094:49: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2171:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT32_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2182:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2020:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2183:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2028:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2183:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2036:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2183:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2044:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2183:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2052:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2183:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2060:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2183:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1472: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:2068:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2183:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2076:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2183:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:2094:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2094:49: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2183:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:2094:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2094:49: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2183:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_INT64_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2194:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2020:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2195:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2028:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2195:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2036:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2195:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2044:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2195:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2052:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2195:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2060:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2195:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1472: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:2068:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2195:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2076:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2195:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:2094:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2094:49: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2195:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2196:41: note: in expansion of macro 'GRN_TIME_VALUE'
                                         GRN_TIME_VALUE,                 \
                                         ^~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:2094:19: note: in expansion of macro 'SIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2094:49: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2195:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_TIME_SET,                   \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2196:41: note: in expansion of macro 'GRN_TIME_VALUE'
                                         GRN_TIME_VALUE,                 \
                                         ^~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1472: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:2206:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2020:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2207:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2028:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2207:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2036:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2207:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2044:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2207:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2052:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2207:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2060:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2207:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1472: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:2068:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2207:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2076:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2207:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1472: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:1372:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:2094:19: note: in expansion of macro 'UNSIGNED_INTEGER_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2094:49: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2207:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_UINT64_SET,                 \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2218:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2020:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2219:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2028:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2219:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2036:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2219:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2044:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2219:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2052:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:2219:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2060:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2219:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1472: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:2068:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2219:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2076:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2219:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725:9: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH'
         DIVISION_OPERATION_DISPATCH(
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473: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:1376:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:2094:19: note: in expansion of macro 'FLOAT_DIVISION_OPERATION_MOD'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                   ^~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2094:49: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, signed_integer_operation(x_, (get(res) + 0)));        \
                                                 ^~~
expr.c:2219:7: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_RIGHT'
       DIVISION_OPERATION_DISPATCH_RIGHT(GRN_FLOAT_SET,                  \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2249:3: note: in expansion of macro 'DIVISION_OPERATION_DISPATCH_LEFT'
   DIVISION_OPERATION_DISPATCH_LEFT(x, y, res,                           \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3725: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2289:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:3737: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2297:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:3737: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2306:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:3737: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:2314:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:3737:9: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
         ARITHMETIC_UNARY_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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o io.lo io.c
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2323:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:3737: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:2331:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:3737:9: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
         ARITHMETIC_UNARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:2339:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:3737:9: note: in expansion of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
         ARITHMETIC_UNARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2358:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:3737: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:2366:5: note: in definition of macro 'ARITHMETIC_UNARY_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:1656:8: note: in expansion of macro 'GRN_INT64_VALUE'
   x_ = GRN_INT64_VALUE(res);                                 \
        ^~~~~~~~~~~~~~~
expr.c:3742: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:766,
                 from expr.c:18:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1818:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1352:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1832:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1356:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1846:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1360:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1860:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1364:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1874:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1888:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1891:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1902:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1372:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1916:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473: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:1376:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1767:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_BITWISE_OR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3745: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3745:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:1640:8: note: in expansion of macro 'GRN_INT64_VALUE'
   x_ = GRN_INT64_VALUE(res);                                            \
        ^~~~~~~~~~~~~~~
expr.c:3754:11: note: in expansion of macro 'TEXT_ARITHMETIC_OPERATION'
           TEXT_ARITHMETIC_OPERATION(|),);
           ^~~~~~~~~~~~~~~~~~~~~~~~~
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3745:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:1644:8: note: in expansion of macro 'GRN_INT64_VALUE'
   y_ = GRN_INT64_VALUE(res);                                            \
        ^~~~~~~~~~~~~~~
expr.c:3754:11: note: in expansion of macro 'TEXT_ARITHMETIC_OPERATION'
           TEXT_ARITHMETIC_OPERATION(|),);
           ^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:766,
                 from expr.c:18:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1818:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1352:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1832:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1356:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1846:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1360:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1860:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1364:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1874:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
io.c: In function 'array_init_':
io.c:383: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:388:15: warning: cast increases required alignment of target type [-Wcast-align]
   io->ainfo = (grn_io_array_info *)mp;
               ^
io.c:398:29: warning: cast increases required alignment of target type [-Wcast-align]
     io->ainfo[i].segments = (uint32_t *)hp;
                             ^
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
io.c:399: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:412:38: warning: cast increases required alignment of target type [-Wcast-align]
     grn_io_array_spec *array_specs = (grn_io_array_spec *)io->user_header;
                                      ^
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1888:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
io.c: In function 'grn_io_expire':
io.c:1311:44: warning: cast increases required alignment of target type [-Wcast-align]
           grn_io_array_spec *array_specs = (grn_io_array_spec *)io->user_header;
                                            ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1891:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1902:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1372:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1916:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473: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:1376:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1767:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_BITWISE_XOR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3757: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3757:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:1640:8: note: in expansion of macro 'GRN_INT64_VALUE'
   x_ = GRN_INT64_VALUE(res);                                            \
        ^~~~~~~~~~~~~~~
expr.c:3766:11: note: in expansion of macro 'TEXT_ARITHMETIC_OPERATION'
           TEXT_ARITHMETIC_OPERATION(^),);
           ^~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3757:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:1644:8: note: in expansion of macro 'GRN_INT64_VALUE'
   y_ = GRN_INT64_VALUE(res);                                            \
        ^~~~~~~~~~~~~~~
expr.c:3766:11: note: in expansion of macro 'TEXT_ARITHMETIC_OPERATION'
           TEXT_ARITHMETIC_OPERATION(^),);
           ^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:766,
                 from expr.c:18:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1818:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1352:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1832:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1356:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1846:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1360:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1860:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1364:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1874:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1888:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1891:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1902:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1372:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1916:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473: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:1376:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1767:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3769: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3769:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:1640:8: note: in expansion of macro 'GRN_INT64_VALUE'
   x_ = GRN_INT64_VALUE(res);                                            \
        ^~~~~~~~~~~~~~~
expr.c:3778:11: note: in expansion of macro 'TEXT_ARITHMETIC_OPERATION'
           TEXT_ARITHMETIC_OPERATION(&),);
           ^~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3769:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:1644:8: note: in expansion of macro 'GRN_INT64_VALUE'
   y_ = GRN_INT64_VALUE(res);                                            \
        ^~~~~~~~~~~~~~~
expr.c:3778:11: note: in expansion of macro 'TEXT_ARITHMETIC_OPERATION'
           TEXT_ARITHMETIC_OPERATION(&),);
           ^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:766,
                 from expr.c:18:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1818:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1352:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1832:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1356:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1846:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1360:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1860:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1364:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1874:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1888:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1891:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1902:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1372:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1916:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473: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:1376:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1767:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_SHIFTL'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3781: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3781:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:1640:8: note: in expansion of macro 'GRN_INT64_VALUE'
   x_ = GRN_INT64_VALUE(res);                                            \
        ^~~~~~~~~~~~~~~
expr.c:3790:11: note: in expansion of macro 'TEXT_ARITHMETIC_OPERATION'
           TEXT_ARITHMETIC_OPERATION(<<),);
           ^~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3781:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:1644:8: note: in expansion of macro 'GRN_INT64_VALUE'
   y_ = GRN_INT64_VALUE(res);                                            \
        ^~~~~~~~~~~~~~~
expr.c:3790:11: note: in expansion of macro 'TEXT_ARITHMETIC_OPERATION'
           TEXT_ARITHMETIC_OPERATION(<<),);
           ^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:766,
                 from expr.c:18:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1818:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1352:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1832:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1356:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1846:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1360:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1860:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1364:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1874:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1888:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1891:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1902:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1372:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1916:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473: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:1376:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1767:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_SHIFTR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3793: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3793:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:1640:8: note: in expansion of macro 'GRN_INT64_VALUE'
   x_ = GRN_INT64_VALUE(res);                                            \
        ^~~~~~~~~~~~~~~
expr.c:3802:11: note: in expansion of macro 'TEXT_ARITHMETIC_OPERATION'
           TEXT_ARITHMETIC_OPERATION(>>),);
           ^~~~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3793:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:1644:8: note: in expansion of macro 'GRN_INT64_VALUE'
   y_ = GRN_INT64_VALUE(res);                                            \
        ^~~~~~~~~~~~~~~
expr.c:3802:11: note: in expansion of macro 'TEXT_ARITHMETIC_OPERATION'
           TEXT_ARITHMETIC_OPERATION(>>),);
           ^~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:766,
                 from expr.c:18:
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1792:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1806:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1818:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1352:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER16_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1820:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1832:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1356:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER16_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1834:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1846:12: note: in expansion of macro 'GRN_INT32_VALUE'
       x_ = GRN_INT32_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1360:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER32_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1848:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1860:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       x_ = GRN_UINT32_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
../include/groonga/groonga.h:1364:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER32_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1862:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1874:12: note: in expansion of macro 'GRN_INT64_VALUE'
       x_ = GRN_INT64_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER64_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1876:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT64_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1888:12: note: in expansion of macro 'GRN_TIME_VALUE'
       x_ = GRN_TIME_VALUE(x);                                           \
            ^~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER64_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_INT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1890:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_TIME_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1891:45: note: in expansion of macro 'GRN_TIME_VALUE'
                                             GRN_TIME_VALUE,             \
                                             ^~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1902:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       x_ = GRN_UINT64_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1372:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
expr.c:1767:19: note: in expansion of macro 'INTEGER64_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_UINT64_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1904:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1916:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       x_ = GRN_FLOAT_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1695:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1703:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1711:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1719:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1727:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1735:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1472: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:1743:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1751:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1473: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:1376:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1767:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1767:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1918:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1973:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3805: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3805:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:3823:18: note: in expansion of macro 'GRN_INT64_VALUE'
             x_ = GRN_INT64_VALUE(res);
                  ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1930:5: note: in definition of macro 'ARITHMETIC_OPERATION_DISPATCH'
     text_operation;                                                     \
     ^~~~~~~~~~~~~~
expr.c:3805:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
expr.c:3827: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:766,
                 from expr.c:18:
../include/groonga/groonga.h:1476: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:9: note: in expansion of macro 'GRN_PTR_VALUE'
   col = GRN_PTR_VALUE(var);                                             \
         ^~~~~~~~~~~~~
expr.c:3834:9: note: in expansion of macro 'UNARY_OPERATE_AND_ASSIGN_DISPATCH'
         UNARY_OPERATE_AND_ASSIGN_DISPATCH(EXEC_OPERATE, 1, GRN_OBJ_INCR);
         ^
expr.c:2405:10: warning: cast increases required alignment of target type [-Wcast-align]
   rid = *(grn_id *)(GRN_BULK_HEAD(var) + sizeof(grn_obj *));            \
          ^
expr.c:3834: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:766,
                 from expr.c:18:
../include/groonga/groonga.h:1476: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:9: note: in expansion of macro 'GRN_PTR_VALUE'
   col = GRN_PTR_VALUE(var);                                             \
         ^~~~~~~~~~~~~
expr.c:3837:9: note: in expansion of macro 'UNARY_OPERATE_AND_ASSIGN_DISPATCH'
         UNARY_OPERATE_AND_ASSIGN_DISPATCH(EXEC_OPERATE, 1, GRN_OBJ_DECR);
         ^
expr.c:2405:10: warning: cast increases required alignment of target type [-Wcast-align]
   rid = *(grn_id *)(GRN_BULK_HEAD(var) + sizeof(grn_obj *));            \
          ^
expr.c:3837: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:766,
                 from expr.c:18:
../include/groonga/groonga.h:1476: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:9: note: in expansion of macro 'GRN_PTR_VALUE'
   col = GRN_PTR_VALUE(var);                                             \
         ^~~~~~~~~~~~~
expr.c:3840: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:2405:10: warning: cast increases required alignment of target type [-Wcast-align]
   rid = *(grn_id *)(GRN_BULK_HEAD(var) + sizeof(grn_obj *));            \
          ^
expr.c:3840: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:766,
                 from expr.c:18:
../include/groonga/groonga.h:1476: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:9: note: in expansion of macro 'GRN_PTR_VALUE'
   col = GRN_PTR_VALUE(var);                                             \
         ^~~~~~~~~~~~~
expr.c:3843: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:2405:10: warning: cast increases required alignment of target type [-Wcast-align]
   rid = *(grn_id *)(GRN_BULK_HEAD(var) + sizeof(grn_obj *));            \
          ^
expr.c:3843: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:766,
                 from expr.c:18:
expr.c: In function 'scan_info_put_index':
../include/groonga/groonga.h:1495: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:4234:21: note: in expansion of macro 'GRN_PTR_VALUE_AT'
     grn_obj **pi = &GRN_PTR_VALUE_AT(&si->index, ni);
                     ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1488: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:4238: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:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:4261:14: note: in expansion of macro 'GRN_INT32_VALUE'
       return GRN_INT32_VALUE(ec[1].value);
              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:4267: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:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:4514:18: note: in expansion of macro 'GRN_INT32_VALUE'
           *sid = GRN_INT32_VALUE(ec[1].value) + 1;
                  ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:4516: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:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:4797:30: note: in expansion of macro 'GRN_INT32_VALUE'
           si->max_interval = GRN_INT32_VALUE(*p);
                              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:4806: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:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:5113:20: note: in expansion of macro 'GRN_INT32_VALUE'
           weight = GRN_INT32_VALUE(c->value);
                    ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:5274:46: note: in expansion of macro 'GRN_INT32_VALUE'
         grn_scan_info_set_start_position(si, GRN_INT32_VALUE(&buffer));
                                              ^~~~~~~~~~~~~~~
expr.c: In function 'grn_scan_info_build_simple_operation':
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:5458:16: note: in expansion of macro 'GRN_INT32_VALUE'
       weight = GRN_INT32_VALUE(operator->value);
                ^~~~~~~~~~~~~~~
expr.c: In function 'grn_scan_info_build_simple_and_operations':
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:5569:18: note: in expansion of macro 'GRN_INT32_VALUE'
         weight = GRN_INT32_VALUE(operator->value);
                  ^~~~~~~~~~~~~~~
expr.c: In function 'exec_result_to_score':
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:5714:14: note: in expansion of macro 'GRN_INT32_VALUE'
       return GRN_INT32_VALUE(result);
              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:5720:14: 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:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:5922:25: note: in expansion of macro 'GRN_UINT32_VALUE'
           posting.rid = GRN_UINT32_VALUE(&dest);
                         ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:5984:15: note: in expansion of macro 'GRN_RECORD_VALUE'
         tid = GRN_RECORD_VALUE(si->query);
               ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1489: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:5996:15: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
         sid = GRN_UINT32_VALUE_AT(&(si->wv), 0);
               ^~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1488: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:5997: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:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:6068:16: note: in expansion of macro 'GRN_UINT32_VALUE'
           id = GRN_UINT32_VALUE(&dest);
                ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:6099:15: note: in expansion of macro 'GRN_RECORD_VALUE'
         tid = GRN_RECORD_VALUE(si->query);
               ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1489: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:6115:15: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
         sid = GRN_UINT32_VALUE_AT(&(si->wv), 0);
               ^~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1488: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:6116: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_prefix':
../include/groonga/groonga.h:1476:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:6204:26: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj **indexes = &GRN_PTR_VALUE(&si->index);
                          ^~~~~~~~~~~~~
expr.c: In function 'grn_table_select_index_match':
../include/groonga/groonga.h:1476:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:6268:23: note: in expansion of macro 'GRN_PTR_VALUE'
   grn_obj wv, **ip = &GRN_PTR_VALUE(&si->index);
                       ^~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:6271:18: note: in expansion of macro 'GRN_INT32_VALUE'
   int32_t *wp = &GRN_INT32_VALUE(&si->wv);
                  ^~~~~~~~~~~~~~~
expr.c:6296:26: warning: cast increases required alignment of target type [-Wcast-align]
   optarg.weight_vector = (int *)GRN_BULK_HEAD(&wv);
                          ^
expr.c:6316: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:766,
                 from expr.c:18:
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:6320:31: note: in expansion of macro 'GRN_INT32_VALUE'
       optarg.weight_vector = &GRN_INT32_VALUE(&wv);
                               ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1495: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:6326:21: note: in expansion of macro 'GRN_PTR_VALUE_AT'
     optarg.scorer = GRN_PTR_VALUE_AT(&(si->scorers), j);
                     ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1495: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:6328:7: note: in expansion of macro 'GRN_PTR_VALUE_AT'
       GRN_PTR_VALUE_AT(&(si->scorer_args_exprs), j);
       ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1489: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:6330: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:1489: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:6542:13: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
       sid = GRN_UINT32_VALUE_AT(&(si->wv), 0);
             ^~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1488: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:6543: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:1489: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:6634:13: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
       sid = GRN_UINT32_VALUE_AT(&(si->wv), 0);
             ^~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1488: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:6635: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:1476:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:6797:22: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *index = GRN_PTR_VALUE(&si->index);
                      ^~~~~~~~~~~~~
expr.c: In function 'grn_table_select':
../include/groonga/groonga.h:1545:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(type *)(GRN_BULK_CURR(obj));\
              ^
../include/groonga/groonga.h:1562:33: note: in expansion of macro 'GRN_BULK_POP'
 #define GRN_PTR_POP(obj, value) GRN_BULK_POP(obj, value, grn_obj *, NULL)
                                 ^~~~~~~~~~~~
expr.c:6945:11: note: in expansion of macro 'GRN_PTR_POP'
           GRN_PTR_POP(&res_stack, res_);
           ^~~~~~~~~~~
expr.c:6991: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:7022: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:7032:9: warning: cast increases required alignment of target type [-Wcast-align]
     ? (((int32_t *)GRN_BULK_HEAD(obj))[offset])
         ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:766,
                 from expr.c:18:
grn_ecmascript.lemon: In function 'yy_reduce':
../include/groonga/groonga.h:1545:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(type *)(GRN_BULK_CURR(obj));\
              ^
../include/groonga/groonga.h:1555:35: note: in expansion of macro 'GRN_BULK_POP'
 #define GRN_INT32_POP(obj, value) GRN_BULK_POP(obj, value, int32_t, 0)
                                   ^~~~~~~~~~~~
grn_ecmascript.lemon:67:3: note: in expansion of macro 'GRN_INT32_POP'
   GRN_INT32_POP(&efsi->weight_stack, weight);
   ^~~~~~~~~~~~~
../include/groonga/groonga.h:1545:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(type *)(GRN_BULK_CURR(obj));\
              ^
../include/groonga/groonga.h:1555:35: note: in expansion of macro 'GRN_BULK_POP'
 #define GRN_INT32_POP(obj, value) GRN_BULK_POP(obj, value, int32_t, 0)
                                   ^~~~~~~~~~~~
grn_ecmascript.lemon:76:3: note: in expansion of macro 'GRN_INT32_POP'
   GRN_INT32_POP(&efsi->weight_stack, weight);
   ^~~~~~~~~~~~~
../include/groonga/groonga.h:1545:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(type *)(GRN_BULK_CURR(obj));\
              ^
../include/groonga/groonga.h:1555:35: note: in expansion of macro 'GRN_BULK_POP'
 #define GRN_INT32_POP(obj, value) GRN_BULK_POP(obj, value, int32_t, 0)
                                   ^~~~~~~~~~~~
grn_ecmascript.lemon:80:3: note: in expansion of macro 'GRN_INT32_POP'
   GRN_INT32_POP(&efsi->mode_stack, mode);
   ^~~~~~~~~~~~~
../include/groonga/groonga.h:1545:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(type *)(GRN_BULK_CURR(obj));\
              ^
../include/groonga/groonga.h:1562:33: note: in expansion of macro 'GRN_BULK_POP'
 #define GRN_PTR_POP(obj, value) GRN_BULK_POP(obj, value, grn_obj *, NULL)
                                 ^~~~~~~~~~~~
grn_ecmascript.lemon:85:3: note: in expansion of macro 'GRN_PTR_POP'
   GRN_PTR_POP(&efsi->column_stack, c);
   ^~~~~~~~~~~
../include/groonga/groonga.h:1545:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(type *)(GRN_BULK_CURR(obj));\
              ^
../include/groonga/groonga.h:1555:35: note: in expansion of macro 'GRN_BULK_POP'
 #define GRN_INT32_POP(obj, value) GRN_BULK_POP(obj, value, int32_t, 0)
                                   ^~~~~~~~~~~~
grn_ecmascript.lemon:86:3: note: in expansion of macro 'GRN_INT32_POP'
   GRN_INT32_POP(&efsi->mode_stack, mode);
   ^~~~~~~~~~~~~
../include/groonga/groonga.h:1545:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(type *)(GRN_BULK_CURR(obj));\
              ^
../include/groonga/groonga.h:1555:35: note: in expansion of macro 'GRN_BULK_POP'
 #define GRN_INT32_POP(obj, value) GRN_BULK_POP(obj, value, int32_t, 0)
                                   ^~~~~~~~~~~~
grn_ecmascript.lemon:92:7: note: in expansion of macro 'GRN_INT32_POP'
       GRN_INT32_POP(&efsi->max_interval_stack, max_interval);
       ^~~~~~~~~~~~~
../include/groonga/groonga.h:1545:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(type *)(GRN_BULK_CURR(obj));\
              ^
../include/groonga/groonga.h:1555:35: note: in expansion of macro 'GRN_BULK_POP'
 #define GRN_INT32_POP(obj, value) GRN_BULK_POP(obj, value, int32_t, 0)
                                   ^~~~~~~~~~~~
grn_ecmascript.lemon:98:7: note: in expansion of macro 'GRN_INT32_POP'
       GRN_INT32_POP(&efsi->similarity_threshold_stack, similarity_threshold);
       ^~~~~~~~~~~~~
../include/groonga/groonga.h:1545:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(type *)(GRN_BULK_CURR(obj));\
              ^
../include/groonga/groonga.h:1555:35: note: in expansion of macro 'GRN_BULK_POP'
 #define GRN_INT32_POP(obj, value) GRN_BULK_POP(obj, value, int32_t, 0)
                                   ^~~~~~~~~~~~
grn_ecmascript.lemon:220:5: note: in expansion of macro 'GRN_INT32_POP'
     GRN_INT32_POP(&efsi->max_interval_stack, max_interval);
     ^~~~~~~~~~~~~
In file included from expr.c:7259:0:
grn_ecmascript.lemon:525:15: warning: cast increases required alignment of target type [-Wcast-align]
     columns = (grn_obj **)GRN_BULK_HEAD(&columns_buffer);
               ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:766,
                 from expr.c:18:
expr.c: In function 'parse_query_accept_string':
../include/groonga/groonga.h:1545:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(type *)(GRN_BULK_CURR(obj));\
              ^
../include/groonga/groonga.h:1562:33: note: in expansion of macro 'GRN_BULK_POP'
 #define GRN_PTR_POP(obj, value) GRN_BULK_POP(obj, value, grn_obj *, NULL)
                                 ^~~~~~~~~~~~
expr.c:7287:3: note: in expansion of macro 'GRN_PTR_POP'
   GRN_PTR_POP(&efsi->token_stack, token);
   ^~~~~~~~~~~
expr.c: In function 'grn_expr_syntax_expand_term_by_func':
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:8605:8: note: in expansion of macro 'GRN_INT32_VALUE'
   rc = GRN_INT32_VALUE(rc_object);
        ^~~~~~~~~~~~~~~
expr.c: In function 'grn_expr_get_keywords':
../include/groonga/groonga.h:1476:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:9119:32: note: in expansion of macro 'GRN_PTR_VALUE'
               grn_obj *index = GRN_PTR_VALUE(&(si->index));
                                ^~~~~~~~~~~~~
../include/groonga/groonga.h:1545:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(type *)(GRN_BULK_CURR(obj));\
              ^
../include/groonga/groonga.h:1556:36: note: in expansion of macro 'GRN_BULK_POP'
 #define GRN_UINT32_POP(obj, value) GRN_BULK_POP(obj, value, uint32_t, 0)
                                    ^~~~~~~~~~~~
expr.c:9164:13: note: in expansion of macro 'GRN_UINT32_POP'
             GRN_UINT32_POP(&but_stack, npbut);
             ^~~~~~~~~~~~~~
expr.c: In function 'grn_expr_snip_add_conditions':
../include/groonga/groonga.h:1545:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(type *)(GRN_BULK_CURR(obj));\
              ^
../include/groonga/groonga.h:1562:33: note: in expansion of macro 'GRN_BULK_POP'
 #define GRN_PTR_POP(obj, value) GRN_BULK_POP(obj, value, grn_obj *, NULL)
                                 ^~~~~~~~~~~~
expr.c:9199:7: note: in expansion of macro 'GRN_PTR_POP'
       GRN_PTR_POP(&keywords, keyword);
       ^~~~~~~~~~~
../include/groonga/groonga.h:1545:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(type *)(GRN_BULK_CURR(obj));\
              ^
../include/groonga/groonga.h:1562:33: note: in expansion of macro 'GRN_BULK_POP'
 #define GRN_PTR_POP(obj, value) GRN_BULK_POP(obj, value, grn_obj *, NULL)
                                 ^~~~~~~~~~~~
expr.c:9209: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o load.lo load.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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c load.c  -fPIC -DPIC -o .libs/load.o
load.c: In function 'values_add':
load.c:37:11: warning: cast increases required alignment of target type [-Wcast-align]
     res = (grn_obj *)(GRN_TEXT_VALUE(&loader->values) + curr_size);
           ^
load.c:42: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:766,
                 from grn_load.h:21,
                 from load.c:19:
load.c: In function 'values_next':
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
load.c:55:14: note: in expansion of macro 'GRN_UINT32_VALUE'
     value += GRN_UINT32_VALUE(value);
              ^~~~~~~~~~~~~~~~
load.c: In function 'add_weight_vector':
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
load.c:99:7: note: in expansion of macro 'GRN_UINT32_VALUE'
   n = GRN_UINT32_VALUE(value);
       ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
load.c:121:28: note: in expansion of macro 'GRN_UINT32_VALUE'
                            GRN_UINT32_VALUE(&weight_buffer),
                            ^~~~~~~~~~~~~~~~
load.c: In function 'set_vector':
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
load.c:130:11: note: in expansion of macro 'GRN_UINT32_VALUE'
   int n = GRN_UINT32_VALUE(vector);
           ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1475: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:1519:38: note: in definition of macro 'GRN_UINT32_PUT'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
load.c:151:35: note: in expansion of macro 'GRN_RECORD_VALUE'
         GRN_UINT32_PUT(ctx, &buf, GRN_RECORD_VALUE(element));
                                   ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
load.c:185:16: note: in expansion of macro 'GRN_UINT32_VALUE'
           n -= GRN_UINT32_VALUE(v);
                ^~~~~~~~~~~~~~~~
load.c: In function 'parse_id_value':
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
load.c:283:12: note: in expansion of macro 'GRN_UINT32_VALUE'
     return GRN_UINT32_VALUE(value);
            ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
load.c:285:12: note: in expansion of macro 'GRN_INT32_VALUE'
     return GRN_INT32_VALUE(value);
            ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
load.c:302:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&casted_value);
              ^~~~~~~~~~~~~~~~
load.c: In function 'bracket_close':
load.c:322:10: warning: cast increases required alignment of target type [-Wcast-align]
   cols = (grn_obj **)GRN_BULK_HEAD(&loader->columns);
          ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:766,
                 from grn_load.h:21,
                 from load.c:19:
../include/groonga/groonga.h:1545:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(type *)(GRN_BULK_CURR(obj));\
              ^
../include/groonga/groonga.h:1556:36: note: in expansion of macro 'GRN_BULK_POP'
 #define GRN_UINT32_POP(obj, value) GRN_BULK_POP(obj, value, uint32_t, 0)
                                    ^~~~~~~~~~~~
load.c:324:3: note: in expansion of macro 'GRN_UINT32_POP'
   GRN_UINT32_POP(&loader->level, begin);
   ^~~~~~~~~~~~~~
load.c:325:11: warning: cast increases required alignment of target type [-Wcast-align]
   value = (grn_obj *)GRN_TEXT_VALUE(&loader->values) + begin;
           ^
load.c:326: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 ../include/groonga.h:22:0,
                 from grn.h:766,
                 from grn_load.h:21,
                 from load.c:19:
load.c: In function 'brace_close':
../include/groonga/groonga.h:1545:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(type *)(GRN_BULK_CURR(obj));\
              ^
../include/groonga/groonga.h:1556:36: note: in expansion of macro 'GRN_BULK_POP'
 #define GRN_UINT32_POP(obj, value) GRN_BULK_POP(obj, value, uint32_t, 0)
                                    ^~~~~~~~~~~~
load.c:529:3: note: in expansion of macro 'GRN_UINT32_POP'
   GRN_UINT32_POP(&loader->level, begin);
   ^~~~~~~~~~~~~~
load.c:530:17: warning: cast increases required alignment of target type [-Wcast-align]
   value_begin = (grn_obj *)GRN_TEXT_VALUE(&loader->values) + begin;
                 ^
load.c:531:15: warning: cast increases required alignment of target type [-Wcast-align]
   value_end = (grn_obj *)GRN_TEXT_VALUE(&loader->values) + loader->values_size;
               ^
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o nfkc50.lo nfkc50.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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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:766,
                 from obj.c:19:
obj.c: In function 'grn_obj_is_true':
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
obj.c:39:14: note: in expansion of macro 'GRN_INT32_VALUE'
       return GRN_INT32_VALUE(obj) != 0;
              ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
obj.c:42:14: note: in expansion of macro 'GRN_UINT32_VALUE'
       return GRN_UINT32_VALUE(obj) != 0;
              ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
obj.c:46: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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:766,
                 from operator.c:19:
operator.c: In function 'grn_operator_exec_equal':
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:179:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:225:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:182:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:225:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:185:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:225:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:188:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:225:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:191:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:225:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:194:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:225:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:197:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:225:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:200:20: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (fabs(x_ - GRN_FLOAT_VALUE(y)) < DBL_EPSILON);\
                    ^~~~~~~~~~~~~~~
operator.c:225:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:179:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:231:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:182:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:231:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:185:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:231:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:188:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:231:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:191:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:231:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:194:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:231:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:197:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:231:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:200:20: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (fabs(x_ - GRN_FLOAT_VALUE(y)) < DBL_EPSILON);\
                    ^~~~~~~~~~~~~~~
operator.c:231:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:236:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:391: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:179:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:237:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:182:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:237:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:185:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:237:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:188:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:237:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:191:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:237:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:194:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:237:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:197:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:237:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:200:20: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (fabs(x_ - GRN_FLOAT_VALUE(y)) < DBL_EPSILON);\
                    ^~~~~~~~~~~~~~~
operator.c:237:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:242:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:391: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:179:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:243:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:182:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:243:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:185:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:243:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:188:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:243:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:191:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:243:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:194:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:243:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:197:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:243:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:200:20: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (fabs(x_ - GRN_FLOAT_VALUE(y)) < DBL_EPSILON);\
                    ^~~~~~~~~~~~~~~
operator.c:243:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:248:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:391: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:179:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:249:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:182:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:249:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:185:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:249:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:188:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:249:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:191:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:249:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:194:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:249:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:197:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:249:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:200:20: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (fabs(x_ - GRN_FLOAT_VALUE(y)) < DBL_EPSILON);\
                    ^~~~~~~~~~~~~~~
operator.c:249:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:254:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:391: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:179:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:255:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:182:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:255:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:185:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:255:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:188:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:255:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:191:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:255:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:194:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:255:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:197:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:255:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:200:20: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (fabs(x_ - GRN_FLOAT_VALUE(y)) < DBL_EPSILON);\
                    ^~~~~~~~~~~~~~~
operator.c:255:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:260:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:391: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:179:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:261:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:182:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:261:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:185:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:261:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:188:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:261:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:191:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:261:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:194:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:261:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:197:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:261:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:200:20: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (fabs(x_ - GRN_FLOAT_VALUE(y)) < DBL_EPSILON);\
                    ^~~~~~~~~~~~~~~
operator.c:261:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:266:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:391:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
In file included from ../include/groonga.h:48:0,
                 from grn.h:766,
                 from operator.c:19:
../include/groonga/groonga.h:1469: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:269:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ == GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:391: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_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:272:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ == GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:391: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:766,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:276:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ == GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:391:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:279:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ == GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:391:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
In file included from ../include/groonga.h:48:0,
                 from grn.h:766,
                 from operator.c:19:
../include/groonga/groonga.h:1473: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:282:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ == GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:391: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:766,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:291:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ == GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:391:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:306:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:391: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:179:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:307:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:182:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:307:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:185:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:307:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:188:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:307:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:191:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:307:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:194:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:307:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:197:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:307:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:200:20: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (fabs(x_ - GRN_FLOAT_VALUE(y)) < DBL_EPSILON);\
                    ^~~~~~~~~~~~~~~
operator.c:307:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:312:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:391: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:315:21: note: in expansion of macro 'GRN_INT32_VALUE'
         r = ((x_ <= GRN_INT32_VALUE(y)) && (x_ >= GRN_INT32_VALUE(y)));\
                     ^~~~~~~~~~~~~~~
operator.c:391: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:315:51: note: in expansion of macro 'GRN_INT32_VALUE'
         r = ((x_ <= GRN_INT32_VALUE(y)) && (x_ >= GRN_INT32_VALUE(y)));\
                                                   ^~~~~~~~~~~~~~~
operator.c:391: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:318:21: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = ((x_ <= GRN_UINT32_VALUE(y)) && (x_ >= GRN_UINT32_VALUE(y)));\
                     ^~~~~~~~~~~~~~~~
operator.c:391: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:318:52: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = ((x_ <= GRN_UINT32_VALUE(y)) && (x_ >= GRN_UINT32_VALUE(y)));\
                                                    ^~~~~~~~~~~~~~~~
operator.c:391: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:322:21: note: in expansion of macro 'GRN_INT64_VALUE'
         r = ((x_ <= GRN_INT64_VALUE(y)) && (x_ >= GRN_INT64_VALUE(y)));\
                     ^~~~~~~~~~~~~~~
operator.c:391: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:322:51: note: in expansion of macro 'GRN_INT64_VALUE'
         r = ((x_ <= GRN_INT64_VALUE(y)) && (x_ >= GRN_INT64_VALUE(y)));\
                                                   ^~~~~~~~~~~~~~~
operator.c:391:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:325:21: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = ((x_ <= GRN_UINT64_VALUE(y)) && (x_ >= GRN_UINT64_VALUE(y)));\
                     ^~~~~~~~~~~~~~~~
operator.c:391:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:325:52: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = ((x_ <= GRN_UINT64_VALUE(y)) && (x_ >= GRN_UINT64_VALUE(y)));\
                                                    ^~~~~~~~~~~~~~~~
operator.c:391:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:328:21: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                     ^~~~~~~~~~~~~~~
operator.c:391:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:328:51: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                                                   ^~~~~~~~~~~~~~~
operator.c:391: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:179:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:354:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:182:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:354:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:185:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:354:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:188:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:354:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:191:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:354:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:194:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:354:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:197:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:354:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:200:20: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (fabs(x_ - GRN_FLOAT_VALUE(y)) < DBL_EPSILON);\
                    ^~~~~~~~~~~~~~~
operator.c:354:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:391: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:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:179:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:225:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:182:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:225:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:185:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:225:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:188:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:225:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:191:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:225:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:194:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:225:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:197:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:225:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:200:20: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (fabs(x_ - GRN_FLOAT_VALUE(y)) < DBL_EPSILON);\
                    ^~~~~~~~~~~~~~~
operator.c:225:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:179:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:231:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:182:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:231:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:185:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:231:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:188:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:231:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:191:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:231:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:194:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:231:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:197:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:231:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:200:20: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (fabs(x_ - GRN_FLOAT_VALUE(y)) < DBL_EPSILON);\
                    ^~~~~~~~~~~~~~~
operator.c:231:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:236:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:400: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:179:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:237:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:182:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:237:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:185:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:237:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:188:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:237:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:191:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:237:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:194:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:237:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:197:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:237:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:200:20: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (fabs(x_ - GRN_FLOAT_VALUE(y)) < DBL_EPSILON);\
                    ^~~~~~~~~~~~~~~
operator.c:237:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:242:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:400: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:179:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:243:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:182:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:243:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:185:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:243:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:188:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:243:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:191:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:243:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:194:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:243:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:197:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:243:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:200:20: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (fabs(x_ - GRN_FLOAT_VALUE(y)) < DBL_EPSILON);\
                    ^~~~~~~~~~~~~~~
operator.c:243:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:248:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:400: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:179:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:249:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:182:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:249:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:185:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:249:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:188:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:249:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:191:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:249:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:194:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:249:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:197:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:249:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:200:20: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (fabs(x_ - GRN_FLOAT_VALUE(y)) < DBL_EPSILON);\
                    ^~~~~~~~~~~~~~~
operator.c:249:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:254:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:400: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:179:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:255:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:182:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:255:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:185:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:255:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:188:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:255:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:191:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:255:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:194:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:255:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:197:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:255:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:200:20: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (fabs(x_ - GRN_FLOAT_VALUE(y)) < DBL_EPSILON);\
                    ^~~~~~~~~~~~~~~
operator.c:255:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:260:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:400: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:179:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:261:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:182:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:261:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:185:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:261:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:188:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:261:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:191:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:261:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:194:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:261:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:197:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:261:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:200:20: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (fabs(x_ - GRN_FLOAT_VALUE(y)) < DBL_EPSILON);\
                    ^~~~~~~~~~~~~~~
operator.c:261:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:266:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:400:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
In file included from ../include/groonga.h:48:0,
                 from grn.h:766,
                 from operator.c:19:
../include/groonga/groonga.h:1469: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:269:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ == GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:400: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_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:272:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ == GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:400: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:766,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:276:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ == GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:400:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:279:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ == GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:400:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
In file included from ../include/groonga.h:48:0,
                 from grn.h:766,
                 from operator.c:19:
../include/groonga/groonga.h:1473: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:282:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ == GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:400: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:766,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:291:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ == GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:400:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:306:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:400: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:179:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:307:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:182:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:307:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:185:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:307:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:188:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:307:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:191:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:307:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:194:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:307:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:197:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:307:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:200:20: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (fabs(x_ - GRN_FLOAT_VALUE(y)) < DBL_EPSILON);\
                    ^~~~~~~~~~~~~~~
operator.c:307:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:312:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:400: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:315:21: note: in expansion of macro 'GRN_INT32_VALUE'
         r = ((x_ <= GRN_INT32_VALUE(y)) && (x_ >= GRN_INT32_VALUE(y)));\
                     ^~~~~~~~~~~~~~~
operator.c:400: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:315:51: note: in expansion of macro 'GRN_INT32_VALUE'
         r = ((x_ <= GRN_INT32_VALUE(y)) && (x_ >= GRN_INT32_VALUE(y)));\
                                                   ^~~~~~~~~~~~~~~
operator.c:400: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:318:21: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = ((x_ <= GRN_UINT32_VALUE(y)) && (x_ >= GRN_UINT32_VALUE(y)));\
                     ^~~~~~~~~~~~~~~~
operator.c:400: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:318:52: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = ((x_ <= GRN_UINT32_VALUE(y)) && (x_ >= GRN_UINT32_VALUE(y)));\
                                                    ^~~~~~~~~~~~~~~~
operator.c:400: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:322:21: note: in expansion of macro 'GRN_INT64_VALUE'
         r = ((x_ <= GRN_INT64_VALUE(y)) && (x_ >= GRN_INT64_VALUE(y)));\
                     ^~~~~~~~~~~~~~~
operator.c:400: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:322:51: note: in expansion of macro 'GRN_INT64_VALUE'
         r = ((x_ <= GRN_INT64_VALUE(y)) && (x_ >= GRN_INT64_VALUE(y)));\
                                                   ^~~~~~~~~~~~~~~
operator.c:400:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:325:21: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = ((x_ <= GRN_UINT64_VALUE(y)) && (x_ >= GRN_UINT64_VALUE(y)));\
                     ^~~~~~~~~~~~~~~~
operator.c:400:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:325:52: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = ((x_ <= GRN_UINT64_VALUE(y)) && (x_ >= GRN_UINT64_VALUE(y)));\
                                                    ^~~~~~~~~~~~~~~~
operator.c:400:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:328:21: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                     ^~~~~~~~~~~~~~~
operator.c:400:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:328:51: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = ((x_ <= GRN_FLOAT_VALUE(y)) && (x_ >= GRN_FLOAT_VALUE(y)));\
                                                   ^~~~~~~~~~~~~~~
operator.c:400: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_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:179:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ == GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:354:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:182:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ == GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:354:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:185:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ == GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:354:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:188:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ == GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:354:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:191:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ == GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:354:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:194:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) == GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:354:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:197:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ == GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:354:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400:3: note: in expansion of macro 'DO_EQ'
   DO_EQ(x, y, r);
   ^~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:200:20: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (fabs(x_ - GRN_FLOAT_VALUE(y)) < DBL_EPSILON);\
                    ^~~~~~~~~~~~~~~
operator.c:354:7: note: in expansion of macro 'DO_EQ_SUB'
       DO_EQ_SUB;\
       ^~~~~~~~~
operator.c:400: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:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:643: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:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:523:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:529:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:535:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:541:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:547:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:48:0,
                 from grn.h:766,
                 from operator.c:19:
../include/groonga/groonga.h:1469: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:550:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470: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:553:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699: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:766,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:560:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:48:0,
                 from grn.h:766,
                 from operator.c:19:
../include/groonga/groonga.h:1473: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:563:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699: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:766,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:572:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:587:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:593:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:599:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:523:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:529:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:535:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:541:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:547:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:48:0,
                 from grn.h:766,
                 from operator.c:19:
../include/groonga/groonga.h:1469: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:550:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470: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:553:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699: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:766,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:560:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:48:0,
                 from grn.h:766,
                 from operator.c:19:
../include/groonga/groonga.h:1473: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:563:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699: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:766,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:572:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:587:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:593:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:599:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:643: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:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:523:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:529:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:535:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:541:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:547:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:48:0,
                 from grn.h:766,
                 from operator.c:19:
../include/groonga/groonga.h:1469: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:550:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470: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:553:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699: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:766,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:560:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:48:0,
                 from grn.h:766,
                 from operator.c:19:
../include/groonga/groonga.h:1473: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:563:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699: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:766,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:572:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:587:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:593:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:599:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:523:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:529:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:535:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:541:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:547:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:48:0,
                 from grn.h:766,
                 from operator.c:19:
../include/groonga/groonga.h:1469: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:550:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470: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:553:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699: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:766,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:560:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:48:0,
                 from grn.h:766,
                 from operator.c:19:
../include/groonga/groonga.h:1473: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:563:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699: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:766,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:572:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:587:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:593:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:599:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:699: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:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:643: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:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:523:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:529:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:535:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:541:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:547:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:48:0,
                 from grn.h:766,
                 from operator.c:19:
../include/groonga/groonga.h:1469: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:550:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470: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:553:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708: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:766,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:560:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:48:0,
                 from grn.h:766,
                 from operator.c:19:
../include/groonga/groonga.h:1473: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:563:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708: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:766,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:572:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:587:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:593:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:599:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:523:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:529:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:535:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:541:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:547:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:48:0,
                 from grn.h:766,
                 from operator.c:19:
../include/groonga/groonga.h:1469: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:550:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470: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:553:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708: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:766,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:560:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:48:0,
                 from grn.h:766,
                 from operator.c:19:
../include/groonga/groonga.h:1473: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:563:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708: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:766,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:572:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:587:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:593:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:599:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:643: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:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:523:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:529:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:535:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:541:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:547:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:48:0,
                 from grn.h:766,
                 from operator.c:19:
../include/groonga/groonga.h:1469: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:550:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470: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:553:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708: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:766,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:560:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:48:0,
                 from grn.h:766,
                 from operator.c:19:
../include/groonga/groonga.h:1473: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:563:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708: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:766,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:572:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:587:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:593:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:599:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:523:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:529:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:535:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:541:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:547:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:48:0,
                 from grn.h:766,
                 from operator.c:19:
../include/groonga/groonga.h:1469: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:550:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470: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:553:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708: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:766,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:560:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:48:0,
                 from grn.h:766,
                 from operator.c:19:
../include/groonga/groonga.h:1473: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:563:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708: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:766,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:572:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:587:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:593:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:599:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:708: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:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:643: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:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:523:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:529:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:535:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:541:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:547:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:48:0,
                 from grn.h:766,
                 from operator.c:19:
../include/groonga/groonga.h:1469: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:550:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470: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:553:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717: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:766,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:560:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:48:0,
                 from grn.h:766,
                 from operator.c:19:
../include/groonga/groonga.h:1473: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:563:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717: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:766,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:572:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:587:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:593:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:599:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:523:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:529:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:535:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:541:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:547:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:48:0,
                 from grn.h:766,
                 from operator.c:19:
../include/groonga/groonga.h:1469: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:550:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470: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:553:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717: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:766,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:560:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:48:0,
                 from grn.h:766,
                 from operator.c:19:
../include/groonga/groonga.h:1473: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:563:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717: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:766,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:572:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:587:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:593:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:599:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:643: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:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:523:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:529:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:535:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:541:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:547:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:48:0,
                 from grn.h:766,
                 from operator.c:19:
../include/groonga/groonga.h:1469: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:550:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470: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:553:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717: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:766,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:560:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:48:0,
                 from grn.h:766,
                 from operator.c:19:
../include/groonga/groonga.h:1473: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:563:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717: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:766,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:572:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:587:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:593:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:599:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:523:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:529:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:535:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:541:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:547:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:48:0,
                 from grn.h:766,
                 from operator.c:19:
../include/groonga/groonga.h:1469: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:550:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470: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:553:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717: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:766,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:560:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:48:0,
                 from grn.h:766,
                 from operator.c:19:
../include/groonga/groonga.h:1473: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:563:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717: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:766,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:572:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:587:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:593:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:599:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:717: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:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:643: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:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:523:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:529:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:535:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:541:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:547:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:48:0,
                 from grn.h:766,
                 from operator.c:19:
../include/groonga/groonga.h:1469: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:550:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470: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:553:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726: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:766,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:560:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:48:0,
                 from grn.h:766,
                 from operator.c:19:
../include/groonga/groonga.h:1473: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:563:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726: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:766,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:572:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:587:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:593:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:599:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:523:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:529:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:535:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:541:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:547:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:48:0,
                 from grn.h:766,
                 from operator.c:19:
../include/groonga/groonga.h:1469: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:550:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470: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:553:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726: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:766,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:560:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:48:0,
                 from grn.h:766,
                 from operator.c:19:
../include/groonga/groonga.h:1473: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:563:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726: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:766,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:572:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:587:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:593:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:599:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:679:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:643: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:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:523:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:529:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:535:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:541:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:547:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:48:0,
                 from grn.h:766,
                 from operator.c:19:
../include/groonga/groonga.h:1469: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:550:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470: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:553:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726: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:766,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:560:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:48:0,
                 from grn.h:766,
                 from operator.c:19:
../include/groonga/groonga.h:1473: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:563:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726: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:766,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:572:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:587:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:593:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:599:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:647:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:506:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:512:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:518:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:523:20: note: in expansion of macro 'GRN_INT16_VALUE'
       int16_t x_ = GRN_INT16_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:524:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:529:21: note: in expansion of macro 'GRN_UINT16_VALUE'
       uint16_t x_ = GRN_UINT16_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:530:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:535:20: note: in expansion of macro 'GRN_INT32_VALUE'
       int32_t x_ = GRN_INT32_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:536:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:541:21: note: in expansion of macro 'GRN_UINT32_VALUE'
       uint32_t x_ = GRN_UINT32_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:542:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:547:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:48:0,
                 from grn.h:766,
                 from operator.c:19:
../include/groonga/groonga.h:1469: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:550:34: note: in expansion of macro 'GRN_INT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_INT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470: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:553:34: note: in expansion of macro 'GRN_UINT32_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_UINT32_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726: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:766,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:557:20: note: in expansion of macro 'GRN_INT64_VALUE'
         r = (x_ op GRN_INT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:560:20: note: in expansion of macro 'GRN_UINT64_VALUE'
         r = (x_ op GRN_UINT64_VALUE(y));\
                    ^~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:48:0,
                 from grn.h:766,
                 from operator.c:19:
../include/groonga/groonga.h:1473: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:563:34: note: in expansion of macro 'GRN_FLOAT_VALUE'
         r = (x_ op GRN_TIME_PACK(GRN_FLOAT_VALUE(y), 0));\
                                  ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726: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:766,
                 from operator.c:19:
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
operator.c:572:24: note: in expansion of macro 'GRN_TIME_VALUE'
             r = (x_ op GRN_TIME_VALUE(&time_value_));\
                        ^~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:587:20: note: in expansion of macro 'GRN_INT64_VALUE'
       int64_t x_ = GRN_INT64_VALUE(x);\
                    ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:588:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:593:21: note: in expansion of macro 'GRN_UINT64_VALUE'
       uint64_t x_ = GRN_UINT64_VALUE(x);\
                     ^~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:594:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:599:19: note: in expansion of macro 'GRN_FLOAT_VALUE'
       double x_ = GRN_FLOAT_VALUE(x);\
                   ^~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:600:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:479: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:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:483:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:456:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:416:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:419:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:422:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:425:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:428:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:431:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:434:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:437:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:462:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:497:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:622:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:661:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:689:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(x, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:726: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:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:1073: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o output.lo output.c
expr.c: In function 'grn_expr_exec':
expr.c:3907:1: warning: const/copy propagation disabled: 24862 basic blocks and 109054 registers; increase --param max-gcse-memory above 338918784 [-Wdisabled-optimization]
 }
 ^
expr.c:3907:1: warning: PRE disabled: 24862 basic blocks and 109054 registers; increase --param max-gcse-memory above 338918784 [-Wdisabled-optimization]
expr.c:3907:1: warning: const/copy propagation disabled: 24862 basic blocks and 109054 registers; increase --param max-gcse-memory above 338918784 [-Wdisabled-optimization]
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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:766,
                 from output.c:18:
output.c: In function 'put_delimiter':
../include/groonga/groonga.h:1489: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:1489: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:1489: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:1489: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:1489: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:1489: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:1489: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:1489: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:1489: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:1489: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:1489: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:1489: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:766,
                 from output.c:18:
output.c: In function 'grn_output_time':
../include/groonga/groonga.h:1489: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:1489: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:766,
                 from output.c:18:
output.c: In function 'grn_output_bulk':
../include/groonga/groonga.h:1467: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:1468: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:1469: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:1470: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:1471: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:1472: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:1473: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:1471: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:766,
                 from output.c:18:
../include/groonga/groonga.h:1475: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:766,
                 from output.c:18:
../include/groonga/groonga.h:1475: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:766,
                 from output.c:18:
output.c: In function 'grn_output_pvector':
../include/groonga/groonga.h:1495: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:766,
                 from output.c:18:
output.c: In function 'grn_output_table_record_by_expression':
../include/groonga/groonga.h:1475: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o pat.lo pat.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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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);
                  ^
In file included from pat.c:18:0:
pat.c: In function 'grn_pat_get_key':
grn.h:703:20: warning: cast increases required alignment of target type [-Wcast-align]
   uint64_t key_ = *(const uint64_t *)key;\
                    ^
pat.c:932:5: note: in expansion of macro 'grn_ntog'
     grn_ntog((keybuf), (key), (size));\
     ^~~~~~~~
pat.c:1878:7: note: in expansion of macro 'KEY_DEC'
       KEY_DEC(pat, keybuf, key, len);
       ^~~~~~~
pat.c: In function 'grn_pat_get_key2':
grn.h:702:27: warning: cast increases required alignment of target type [-Wcast-align]
   grn_geo_point *point_ = (grn_geo_point *)keybuf;\
                           ^
pat.c:932:5: note: in expansion of macro 'grn_ntog'
     grn_ntog((keybuf), (key), (size));\
     ^~~~~~~~
pat.c:1907:7: note: in expansion of macro 'KEY_DEC'
       KEY_DEC(pat, curr, key, len);
       ^~~~~~~
grn.h:703:20: warning: cast increases required alignment of target type [-Wcast-align]
   uint64_t key_ = *(const uint64_t *)key;\
                    ^
pat.c:932:5: note: in expansion of macro 'grn_ntog'
     grn_ntog((keybuf), (key), (size));\
     ^~~~~~~~
pat.c:1907:7: note: in expansion of macro 'KEY_DEC'
       KEY_DEC(pat, curr, key, len);
       ^~~~~~~
pat.c:941:9: warning: cast increases required alignment of target type [-Wcast-align]
       *((int64_t *)(keybuf)) = v ^ (((v^(1LL<<63))>> 63)|(1LL<<63));  \
         ^
pat.c:1907:7: note: in expansion of macro 'KEY_DEC'
       KEY_DEC(pat, curr, key, len);
       ^~~~~~~
pat.c: In function 'grn_pat_set_value':
pat.c:1982:15: warning: cast increases required alignment of target type [-Wcast-align]
             *((int32_t *)v) += *((int32_t *)value);
               ^
pat.c:1985:15: warning: cast increases required alignment of target type [-Wcast-align]
             *((int64_t *)v) += *((int64_t *)value);
               ^
pat.c:1994:15: warning: cast increases required alignment of target type [-Wcast-align]
             *((int32_t *)v) -= *((int32_t *)value);
               ^
pat.c:1997: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o proc.lo proc.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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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:1489: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:202:29: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
           GRN_OUTPUT_UINT64(GRN_UINT32_VALUE_AT(ids, i));
                             ^~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1488:42: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE_AT(obj,offset) (((int *)GRN_BULK_HEAD(obj))[offset])
                                          ^
grn_output.h:101:30: note: in definition of macro 'GRN_OUTPUT_INT64'
   (grn_ctx_output_int64(ctx, value))
                              ^~~~~
proc.c:227:28: note: in expansion of macro 'GRN_INT32_VALUE_AT'
           GRN_OUTPUT_INT64(GRN_INT32_VALUE_AT(return_codes, i));
                            ^~~~~~~~~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:766,
                 from grn_proc.h:21,
                 from proc.c:19:
proc.c: In function 'list_proc':
../include/groonga/groonga.h:1495: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:1237: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:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1273: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:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1372:12: note: in expansion of macro 'GRN_INT16_VALUE'
     return GRN_INT16_VALUE(number) < 0;
            ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1374:12: note: in expansion of macro 'GRN_INT32_VALUE'
     return GRN_INT32_VALUE(number) < 0;
            ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471: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:1376:12: note: in expansion of macro 'GRN_INT64_VALUE'
     return GRN_INT64_VALUE(number) < 0;
            ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
proc.c:1378:12: note: in expansion of macro 'GRN_TIME_VALUE'
     return GRN_TIME_VALUE(number) < 0;
            ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1380: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:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1429:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value1 = value1;\
                            ^~~~~~
proc.c:1451:24: note: in expansion of macro 'GRN_INT16_VALUE'
                        GRN_INT16_VALUE(number1),
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1430:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value2 = value2;\
                            ^~~~~~
proc.c:1452:24: note: in expansion of macro 'GRN_INT16_VALUE'
                        GRN_INT16_VALUE(number2));
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
proc.c:1429:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value1 = value1;\
                            ^~~~~~
proc.c:1455:24: note: in expansion of macro 'GRN_UINT16_VALUE'
                        GRN_UINT16_VALUE(number1),
                        ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
proc.c:1430:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value2 = value2;\
                            ^~~~~~
proc.c:1456:24: note: in expansion of macro 'GRN_UINT16_VALUE'
                        GRN_UINT16_VALUE(number2));
                        ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1429:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value1 = value1;\
                            ^~~~~~
proc.c:1459:24: note: in expansion of macro 'GRN_INT32_VALUE'
                        GRN_INT32_VALUE(number1),
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1430:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value2 = value2;\
                            ^~~~~~
proc.c:1460:24: note: in expansion of macro 'GRN_INT32_VALUE'
                        GRN_INT32_VALUE(number2));
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
proc.c:1429:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value1 = value1;\
                            ^~~~~~
proc.c:1463:24: note: in expansion of macro 'GRN_UINT32_VALUE'
                        GRN_UINT32_VALUE(number1),
                        ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
proc.c:1430:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value2 = value2;\
                            ^~~~~~
proc.c:1464:24: note: in expansion of macro 'GRN_UINT32_VALUE'
                        GRN_UINT32_VALUE(number2));
                        ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471: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:1429:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value1 = value1;\
                            ^~~~~~
proc.c:1467:24: note: in expansion of macro 'GRN_INT64_VALUE'
                        GRN_INT64_VALUE(number1),
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471: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:1430:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value2 = value2;\
                            ^~~~~~
proc.c:1468:24: note: in expansion of macro 'GRN_INT64_VALUE'
                        GRN_INT64_VALUE(number2));
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1472: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:1429:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value1 = value1;\
                            ^~~~~~
proc.c:1471:24: note: in expansion of macro 'GRN_UINT64_VALUE'
                        GRN_UINT64_VALUE(number1),
                        ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1472: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:1430:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value2 = value2;\
                            ^~~~~~
proc.c:1472:24: note: in expansion of macro 'GRN_UINT64_VALUE'
                        GRN_UINT64_VALUE(number2));
                        ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1429:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value1 = value1;\
                            ^~~~~~
proc.c:1475:24: note: in expansion of macro 'GRN_FLOAT_VALUE'
                        GRN_FLOAT_VALUE(number1),
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1430:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value2 = value2;\
                            ^~~~~~
proc.c:1476:24: note: in expansion of macro 'GRN_FLOAT_VALUE'
                        GRN_FLOAT_VALUE(number2));
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471: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:1429:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value1 = value1;\
                            ^~~~~~
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
proc.c:1479:24: note: in expansion of macro 'GRN_TIME_VALUE'
                        GRN_TIME_VALUE(number1),
                        ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1471: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:1430:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value2 = value2;\
                            ^~~~~~
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
proc.c:1480: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:766,
                 from grn_proc.h:21,
                 from proc.c:19:
proc.c: In function 'get_number_in_grn_uvector':
../include/groonga/groonga.h:1486: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])
                                          ^
../include/groonga/groonga.h:1352:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
proc.c:1495:24: note: in expansion of macro 'GRN_INT16_VALUE_AT'
                        GRN_ ## type ## _VALUE_AT(uvector, offset));  \
                        ^~~~
proc.c:1508:5: note: in expansion of macro 'GET_UVECTOR_ELEMENT_AS'
     GET_UVECTOR_ELEMENT_AS(INT16);
     ^~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1487: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])
                                           ^
../include/groonga/groonga.h:1356:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
proc.c:1495:24: note: in expansion of macro 'GRN_UINT16_VALUE_AT'
                        GRN_ ## type ## _VALUE_AT(uvector, offset));  \
                        ^~~~
proc.c:1511:5: note: in expansion of macro 'GET_UVECTOR_ELEMENT_AS'
     GET_UVECTOR_ELEMENT_AS(UINT16);
     ^~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1488:42: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE_AT(obj,offset) (((int *)GRN_BULK_HEAD(obj))[offset])
                                          ^
../include/groonga/groonga.h:1360:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
proc.c:1495:24: note: in expansion of macro 'GRN_INT32_VALUE_AT'
                        GRN_ ## type ## _VALUE_AT(uvector, offset));  \
                        ^~~~
proc.c:1514:5: note: in expansion of macro 'GET_UVECTOR_ELEMENT_AS'
     GET_UVECTOR_ELEMENT_AS(INT32);
     ^~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1489: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])
                                           ^
../include/groonga/groonga.h:1364:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
proc.c:1495:24: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
                        GRN_ ## type ## _VALUE_AT(uvector, offset));  \
                        ^~~~
proc.c:1517:5: note: in expansion of macro 'GET_UVECTOR_ELEMENT_AS'
     GET_UVECTOR_ELEMENT_AS(UINT32);
     ^~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1490:42: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE_AT(obj,offset) (((long long int *)GRN_BULK_HEAD(obj))[offset])
                                          ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
proc.c:1495:24: note: in expansion of macro 'GRN_INT64_VALUE_AT'
                        GRN_ ## type ## _VALUE_AT(uvector, offset));  \
                        ^~~~
proc.c:1520:5: note: in expansion of macro 'GET_UVECTOR_ELEMENT_AS'
     GET_UVECTOR_ELEMENT_AS(INT64);
     ^~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1491:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE_AT(obj,offset) (((long long unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
../include/groonga/groonga.h:1372:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
proc.c:1495:24: note: in expansion of macro 'GRN_UINT64_VALUE_AT'
                        GRN_ ## type ## _VALUE_AT(uvector, offset));  \
                        ^~~~
proc.c:1523:5: note: in expansion of macro 'GET_UVECTOR_ELEMENT_AS'
     GET_UVECTOR_ELEMENT_AS(UINT64);
     ^~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1492:42: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE_AT(obj,offset) (((double *)GRN_BULK_HEAD(obj))[offset])
                                          ^
../include/groonga/groonga.h:1376:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
proc.c:1495:24: note: in expansion of macro 'GRN_FLOAT_VALUE_AT'
                        GRN_ ## type ## _VALUE_AT(uvector, offset));  \
                        ^~~~
proc.c:1526:5: note: in expansion of macro 'GET_UVECTOR_ELEMENT_AS'
     GET_UVECTOR_ELEMENT_AS(FLOAT);
     ^~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1490:42: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE_AT(obj,offset) (((long long int *)GRN_BULK_HEAD(obj))[offset])
                                          ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
../include/groonga/groonga.h:1493:27: note: in expansion of macro 'GRN_INT64_VALUE_AT'
 #define GRN_TIME_VALUE_AT GRN_INT64_VALUE_AT
                           ^~~~~~~~~~~~~~~~~~
proc.c:1495:24: note: in expansion of macro 'GRN_TIME_VALUE_AT'
                        GRN_ ## type ## _VALUE_AT(uvector, offset));  \
                        ^~~~
proc.c:1529:5: note: in expansion of macro 'GET_UVECTOR_ELEMENT_AS'
     GET_UVECTOR_ELEMENT_AS(TIME);
     ^~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1494: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/groonga.h:1381:26: note: in definition of macro 'GRN_RECORD_SET'
   grn_id _val = (grn_id)(val);\
                          ^~~
proc.c:1495:24: note: in expansion of macro 'GRN_RECORD_VALUE_AT'
                        GRN_ ## type ## _VALUE_AT(uvector, offset));  \
                        ^~~~
proc.c:1532:5: note: in expansion of macro 'GET_UVECTOR_ELEMENT_AS'
     GET_UVECTOR_ELEMENT_AS(RECORD);
     ^~~~~~~~~~~~~~~~~~~~~~
proc.c: In function 'func_max':
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
proc.c:1611:32: note: in expansion of macro 'GRN_RECORD_VALUE'
                                GRN_RECORD_VALUE(&number_in_uvector),
                                ^~~~~~~~~~~~~~~~
proc.c: In function 'func_min':
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
proc.c:1701:32: note: in expansion of macro 'GRN_RECORD_VALUE'
                                GRN_RECORD_VALUE(&number_in_uvector),
                                ^~~~~~~~~~~~~~~~
proc.c: In function 'selector_to_function_data_init':
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
proc.c:1887: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:1475: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:1381:26: note: in definition of macro 'GRN_RECORD_SET'
   grn_id _val = (grn_id)(val);\
                          ^~~
proc.c:2640: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:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
proc.c:2772:9: note: in expansion of macro 'GRN_TIME_VALUE'
         GRN_TIME_VALUE(data->max) - GRN_TIME_VALUE(data->min);
         ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
proc.c:2772: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:1489: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:3058: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:1494: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:3141: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:1494: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:3184: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:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
proc.c:3187:31: note: in expansion of macro 'GRN_RECORD_VALUE'
               if (value_id == GRN_RECORD_VALUE(&record_value)) {
                               ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1494: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:3201:35: note: in expansion of macro 'GRN_RECORD_VALUE_AT'
                   if (value_id == GRN_RECORD_VALUE_AT(&record_value, j)) {
                                   ^~~~~~~~~~~~~~~~~~~
proc.c: In function 'proc_range_filter':
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:3354:21: note: in expansion of macro 'GRN_INT32_VALUE'
       real_offset = GRN_INT32_VALUE(&int32_value);
                     ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:3369:20: note: in expansion of macro 'GRN_INT32_VALUE'
       real_limit = GRN_INT32_VALUE(&int32_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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o raw_string.lo raw_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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c raw_string.c  -fPIC -DPIC -o .libs/raw_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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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:766,
                 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_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:766,
                 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_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:766,
                 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_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:766,
                 from grn_db.h:21,
                 from rset.c:17:
../include/groonga/groonga.h:1473: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o scanner.lo scanner.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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o scorers.lo scorers.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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
In file included from ../include/groonga.h:22:0,
                 from grn.h:766,
                 from grn_db.h:21,
                 from scorers.c:19:
scorers.c: In function 'scorer_tf_at_most':
../include/groonga/groonga.h:1473: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:1473: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o store.lo store.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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
store.c: In function 'grn_ja_free':
store.c:619:6: warning: cast increases required alignment of target type [-Wcast-align]
     *(uint32_t *)(addr + pos - sizeof(grn_id)) = DELETED|aligned_size;
      ^
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o str.lo str.c
store.c: In function 'grn_ja_replace':
store.c:714:24: warning: cast increases required alignment of target type [-Wcast-align]
   if (cas && *cas != *((uint64_t *)&eback)) {
                        ^
store.c:722:26: warning: cast increases required alignment of target type [-Wcast-align]
     uint64_t *location = (uint64_t *)(einfo + pos);
                          ^
store.c:723: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:801:8: warning: cast increases required alignment of target type [-Wcast-align]
       *(grn_id *)(addr + pos) = id;
        ^
store.c:804: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:954:30: warning: cast increases required alignment of target type [-Wcast-align]
             uint32_t pos = *((uint32_t *)(b + el));
                              ^
store.c:960:17: warning: cast increases required alignment of target type [-Wcast-align]
               *((uint32_t *)(b + el)) = value_len - rest;
                 ^
store.c:963:17: warning: cast increases required alignment of target type [-Wcast-align]
               *((uint32_t *)(b + el)) = pos + value_len;
                 ^
store.c:1004:30: warning: cast increases required alignment of target type [-Wcast-align]
             uint32_t pos = *((uint32_t *)(b + el));
                              ^
store.c:1010:17: warning: cast increases required alignment of target type [-Wcast-align]
               *((uint32_t *)(b + el)) = el - rest;
                 ^
store.c:1013: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:1182: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:1261:5: warning: cast increases required alignment of target type [-Wcast-align]
   *((uint64_t *)packed_value) = packed_value_meta;
     ^
store.c:1262: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:1580: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:1861: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:1952:27: warning: cast increases required alignment of target type [-Wcast-align]
             grn_id id = *((grn_id *)v);
                           ^
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
str.c: In function 'grn_text_atoj':
str.c:2646: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:2654: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:2664:19: warning: cast increases required alignment of target type [-Wcast-align]
             idp = (grn_id *)GRN_BULK_HEAD(&buf);
                   ^
str.c:2691: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:766,
                 from str.c:17:
str.c: In function 'grn_text_otoj':
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
str.c:2755: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:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
str.c:2758: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:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
str.c:2761: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:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
str.c:2764: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:1471: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:2767: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:1472: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:2770: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:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
str.c:2773: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:2777:23: warning: cast increases required alignment of target type [-Wcast-align]
         double dv = *((int64_t *)GRN_BULK_HEAD(obj));
                       ^
str.c:2785: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:766,
                 from str.c:17:
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
str.c:2799:21: note: in expansion of macro 'GRN_RECORD_VALUE'
         grn_id id = GRN_RECORD_VALUE(obj);
                     ^~~~~~~~~~~~~~~~
str.c:2800: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:766,
                 from str.c:17:
../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
str.c:2842:23: note: in expansion of macro 'GRN_RECORD_VALUE'
           grn_id id = GRN_RECORD_VALUE(obj);
                       ^~~~~~~~~~~~~~~~
str.c:2902:21: 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:2902:57: 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:2904:29: warning: cast increases required alignment of target type [-Wcast-align]
         grn_obj **columns = (grn_obj **)GRN_BULK_HEAD(&format->columns);
                             ^
str.c:2982:21: warning: cast increases required alignment of target type [-Wcast-align]
         grn_id *v = (grn_id *)GRN_BULK_HEAD(obj),
                     ^
str.c:2983: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:766,
                 from str.c:17:
../include/groonga/groonga.h:1495: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:3068:17: note: in expansion of macro 'GRN_PTR_VALUE_AT'
         value = GRN_PTR_VALUE_AT(obj, i);
                 ^~~~~~~~~~~~~~~~
str.c:3080: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o table.lo table.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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c table.c  -fPIC -DPIC -o .libs/table.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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o time.lo time.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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o token_cursor.lo token_cursor.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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o tokenizer.lo tokenizer.c
In file included from ../include/groonga.h:22:0,
                 from grn.h:766,
                 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:1495: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:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
token_cursor.c:158:26: note: in expansion of macro 'GRN_INT32_VALUE'
   current_token.status = GRN_INT32_VALUE(status);
                          ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1495: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:166: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:302:19: warning: cast increases required alignment of target type [-Wcast-align]
           tid = *((grn_id *)token_cursor->curr);
                   ^
token_cursor.c:321: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:766,
                 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:1495: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:360:36: note: in expansion of macro 'GRN_PTR_VALUE_AT'
     grn_obj *token_filter_object = GRN_PTR_VALUE_AT(token_filters, i);
                                    ^~~~~~~~~~~~~~~~
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o tokenizers.lo tokenizers.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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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:766,
                 from tokenizer.c:18:
tokenizer.c: In function 'grn_tokenizer_query_open':
../include/groonga/groonga.h:1470: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:1470: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);
                              ^~~~~~~~~~~~~~~~
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
In file included from ../include/groonga.h:22:0,
                 from grn.h:766,
                 from grn_db.h:21,
                 from util.c:19:
util.c: In function 'grn_ptr_inspect':
../include/groonga/groonga.h:1476:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
util.c:428: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:1495: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:449: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:743: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:766,
                 from grn_db.h:21,
                 from util.c:19:
util.c: In function 'grn_time_inspect':
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
util.c:1104: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:1478:25: warning: cast increases required alignment of target type [-Wcast-align]
   grn_geo_point *_val = (grn_geo_point *)GRN_BULK_HEAD(obj);\
                         ^
util.c:1134: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:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
util.c:1179: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:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
util.c:1200: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:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
util.c:1243: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o window_function.lo window_function.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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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:766,
                 from grn_ctx.h:21,
                 from window_function.c:19:
window_function.c: In function 'grn_window_next':
../include/groonga/groonga.h:1494: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:75: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:289: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
In file included from ../include/groonga.h:22:0,
                 from grn.h:766,
                 from grn_db.h:21,
                 from window_functions.c:19:
window_functions.c: In function 'window_sum':
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
window_functions.c:153:25: note: in expansion of macro 'GRN_INT64_VALUE'
                         GRN_INT64_VALUE(&sum) + GRN_INT8_VALUE(&value));
                         ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
window_functions.c:158:25: note: in expansion of macro 'GRN_INT64_VALUE'
                         GRN_INT64_VALUE(&sum) + GRN_INT16_VALUE(&value));
                         ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467: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:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
window_functions.c:158:49: note: in expansion of macro 'GRN_INT16_VALUE'
                         GRN_INT64_VALUE(&sum) + GRN_INT16_VALUE(&value));
                                                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
window_functions.c:163:25: note: in expansion of macro 'GRN_INT64_VALUE'
                         GRN_INT64_VALUE(&sum) + GRN_INT32_VALUE(&value));
                         ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469: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:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
window_functions.c:163:49: note: in expansion of macro 'GRN_INT32_VALUE'
                         GRN_INT64_VALUE(&sum) + GRN_INT32_VALUE(&value));
                                                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
window_functions.c:168:25: note: in expansion of macro 'GRN_INT64_VALUE'
                         GRN_INT64_VALUE(&sum) + GRN_INT64_VALUE(&value));
                         ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1368:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
window_functions.c:168:49: note: in expansion of macro 'GRN_INT64_VALUE'
                         GRN_INT64_VALUE(&sum) + GRN_INT64_VALUE(&value));
                                                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1472: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:1372:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
window_functions.c:173:26: note: in expansion of macro 'GRN_UINT64_VALUE'
                          GRN_UINT64_VALUE(&sum) + GRN_UINT8_VALUE(&value));
                          ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1472: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:1372:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
window_functions.c:178:26: note: in expansion of macro 'GRN_UINT64_VALUE'
                          GRN_UINT64_VALUE(&sum) + GRN_UINT16_VALUE(&value));
                          ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468: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:1372:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
window_functions.c:178:51: note: in expansion of macro 'GRN_UINT16_VALUE'
                          GRN_UINT64_VALUE(&sum) + GRN_UINT16_VALUE(&value));
                                                   ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1472: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:1372:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
window_functions.c:183:26: note: in expansion of macro 'GRN_UINT64_VALUE'
                          GRN_UINT64_VALUE(&sum) + GRN_UINT32_VALUE(&value));
                          ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470: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:1372:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
window_functions.c:183:51: note: in expansion of macro 'GRN_UINT32_VALUE'
                          GRN_UINT64_VALUE(&sum) + GRN_UINT32_VALUE(&value));
                                                   ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1472: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:1372:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
window_functions.c:188:26: note: in expansion of macro 'GRN_UINT64_VALUE'
                          GRN_UINT64_VALUE(&sum) + GRN_UINT64_VALUE(&value));
                          ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1472: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:1372:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
window_functions.c:188:51: note: in expansion of macro 'GRN_UINT64_VALUE'
                          GRN_UINT64_VALUE(&sum) + GRN_UINT64_VALUE(&value));
                                                   ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473: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:1376:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
window_functions.c:193:25: note: in expansion of macro 'GRN_FLOAT_VALUE'
                         GRN_FLOAT_VALUE(&sum) + GRN_FLOAT_VALUE(&value));
                         ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473: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:1376:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
window_functions.c:193:49: note: in expansion of macro 'GRN_FLOAT_VALUE'
                         GRN_FLOAT_VALUE(&sum) + GRN_FLOAT_VALUE(&value));
                                                 ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
window_functions.c:213:28: note: in expansion of macro 'GRN_INT16_VALUE'
           sum_raw_int64 += GRN_INT16_VALUE(&value);
                            ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
window_functions.c:216:28: note: in expansion of macro 'GRN_INT32_VALUE'
           sum_raw_int64 += GRN_INT32_VALUE(&value);
                            ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
window_functions.c:219:28: note: in expansion of macro 'GRN_INT64_VALUE'
           sum_raw_int64 += GRN_INT64_VALUE(&value);
                            ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1468:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
window_functions.c:225:29: note: in expansion of macro 'GRN_UINT16_VALUE'
           sum_raw_uint64 += GRN_UINT16_VALUE(&value);
                             ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
window_functions.c:228:29: note: in expansion of macro 'GRN_UINT32_VALUE'
           sum_raw_uint64 += GRN_UINT32_VALUE(&value);
                             ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1472:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
window_functions.c:231:29: note: in expansion of macro 'GRN_UINT64_VALUE'
           sum_raw_uint64 += GRN_UINT64_VALUE(&value);
                             ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
window_functions.c:234:29: note: in expansion of macro 'GRN_FLOAT_VALUE'
           sum_raw_double += GRN_FLOAT_VALUE(&value);
                             ^~~~~~~~~~~~~~~
/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 -fno-strict-aliasing    -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -c -o arrow.lo arrow.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 -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 -Wno-unused-but-set-variable -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -c -o dat.lo dat.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 -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 -Wno-unused-but-set-variable -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -c arrow.cpp  -fPIC -DPIC -o .libs/arrow.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 -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 -Wno-unused-but-set-variable -Wformat -Wno-format-truncation -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
expr.c:3907:1: warning: const/copy propagation disabled: 24920 basic blocks and 111688 registers; increase --param max-gcse-memory above 347982880 [-Wdisabled-optimization]
/bin/bash ../libtool  --tag=CXX   --mode=link g++ -fno-strict-aliasing    -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wformat -Wno-format-truncation -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 db.lo dump.lo ts.lo type.lo error.lo expr.lo expr_code.lo expr_executor.lo file_lock.lo geo.lo hash.lo id.lo ii.lo index_column.lo io.lo load.lo logger.lo mrb.lo nfkc.lo nfkc50.lo normalizer.lo obj.lo operator.lo output.lo pat.lo plugin.lo proc.lo raw_string.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 table.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 arrow.lo dat.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/7/../../../arm-linux-gnueabihf/crti.o /usr/lib/gcc/arm-linux-gnueabihf/7/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/db.o .libs/dump.o .libs/ts.o .libs/type.o .libs/error.o .libs/expr.o .libs/expr_code.o .libs/expr_executor.o .libs/file_lock.o .libs/geo.o .libs/hash.o .libs/id.o .libs/ii.o .libs/index_column.o .libs/io.o .libs/load.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/raw_string.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/table.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 .libs/arrow.o .libs/dat.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/7 -L/usr/lib/gcc/arm-linux-gnueabihf/7/../../../arm-linux-gnueabihf -L/usr/lib/gcc/arm-linux-gnueabihf/7/../../.. -L/lib/arm-linux-gnueabihf -L/usr/lib/arm-linux-gnueabihf -lstdc++ -lm -lc -lgcc_s /usr/lib/gcc/arm-linux-gnueabihf/7/crtendS.o /usr/lib/gcc/arm-linux-gnueabihf/7/../../../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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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:766,
                 from ../../lib/grn_ctx.h:21,
                 from suggest.c:24:
suggest.c: In function 'cooccurrence_search':
../../include/groonga/groonga.h:1475: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:1469: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:1469: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:1469: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:1469: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:42:0,
                 from ../../lib/grn.h:766,
                 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:766,
                 from ../../lib/grn_ctx.h:21,
                 from suggest.c:24:
suggest.c: In function 'complete_add_item':
../../include/groonga/groonga.h:1469: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:1469: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:1469: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:1469: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:1469: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:1469: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:1473: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:1475: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:1475: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:1475: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:1475: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:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1474: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:1470: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:766,
                 from ../../lib/grn_ctx.h:21,
                 from suggest.c:24:
../../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1474: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:1475: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:1475: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
/bin/bash ../../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 string.c:23:
string.c: In function 'func_string_substring':
../../include/groonga/groonga.h:1469: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:1471: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:1471: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:1469: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:1471: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:1471: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 vector.c:23:
vector.c: In function 'func_vector_slice':
../../include/groonga/groonga.h:1469: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:1471: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:1471: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:1469: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:1471: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:1471: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:1495: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);
                            ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1486: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])
                                          ^
../../include/groonga/groonga.h:1509:38: note: in definition of macro 'GRN_INT16_PUT'
   signed short _val = (signed short)(val); grn_bulk_write((ctx), (obj), (char *)&_val, sizeof(signed short));\
                                      ^~~
vector.c:280:34: note: in expansion of macro 'GRN_INT16_VALUE_AT'
                                  GRN_ ## type ## _VALUE_AT(target, i)); \
                                  ^~~~
vector.c:294:11: note: in expansion of macro 'PUT_SLICE_VALUES'
           PUT_SLICE_VALUES(INT16);
           ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1487: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])
                                           ^
../../include/groonga/groonga.h:1512:42: note: in definition of macro 'GRN_UINT16_PUT'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
vector.c:280:34: note: in expansion of macro 'GRN_UINT16_VALUE_AT'
                                  GRN_ ## type ## _VALUE_AT(target, i)); \
                                  ^~~~
vector.c:297:11: note: in expansion of macro 'PUT_SLICE_VALUES'
           PUT_SLICE_VALUES(UINT16);
           ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1488:42: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE_AT(obj,offset) (((int *)GRN_BULK_HEAD(obj))[offset])
                                          ^
../../include/groonga/groonga.h:1516:20: note: in definition of macro 'GRN_INT32_PUT'
   int _val = (int)(val); grn_bulk_write((ctx), (obj), (char *)&_val, sizeof(int));\
                    ^~~
vector.c:280:34: note: in expansion of macro 'GRN_INT32_VALUE_AT'
                                  GRN_ ## type ## _VALUE_AT(target, i)); \
                                  ^~~~
vector.c:300:11: note: in expansion of macro 'PUT_SLICE_VALUES'
           PUT_SLICE_VALUES(INT32);
           ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1489: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])
                                           ^
../../include/groonga/groonga.h:1519:38: note: in definition of macro 'GRN_UINT32_PUT'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
vector.c:280:34: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
                                  GRN_ ## type ## _VALUE_AT(target, i)); \
                                  ^~~~
vector.c:303:11: note: in expansion of macro 'PUT_SLICE_VALUES'
           PUT_SLICE_VALUES(UINT32);
           ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1490:42: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE_AT(obj,offset) (((long long int *)GRN_BULK_HEAD(obj))[offset])
                                          ^
../../include/groonga/groonga.h:1523:40: note: in definition of macro 'GRN_INT64_PUT'
   long long int _val = (long long int)(val);\
                                        ^~~
vector.c:280:34: note: in expansion of macro 'GRN_INT64_VALUE_AT'
                                  GRN_ ## type ## _VALUE_AT(target, i)); \
                                  ^~~~
vector.c:306:11: note: in expansion of macro 'PUT_SLICE_VALUES'
           PUT_SLICE_VALUES(INT64);
           ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1491:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE_AT(obj,offset) (((long long unsigned int *)GRN_BULK_HEAD(obj))[offset])
                                           ^
../../include/groonga/groonga.h:1527:58: note: in definition of macro 'GRN_UINT64_PUT'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
vector.c:280:34: note: in expansion of macro 'GRN_UINT64_VALUE_AT'
                                  GRN_ ## type ## _VALUE_AT(target, i)); \
                                  ^~~~
vector.c:309:11: note: in expansion of macro 'PUT_SLICE_VALUES'
           PUT_SLICE_VALUES(UINT64);
           ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1492:42: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE_AT(obj,offset) (((double *)GRN_BULK_HEAD(obj))[offset])
                                          ^
../../include/groonga/groonga.h:1531:26: note: in definition of macro 'GRN_FLOAT_PUT'
   double _val = (double)(val); grn_bulk_write((ctx), (obj), (char *)&_val, sizeof(double));\
                          ^~~
vector.c:280:34: note: in expansion of macro 'GRN_FLOAT_VALUE_AT'
                                  GRN_ ## type ## _VALUE_AT(target, i)); \
                                  ^~~~
vector.c:312:11: note: in expansion of macro 'PUT_SLICE_VALUES'
           PUT_SLICE_VALUES(FLOAT);
           ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1490:42: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE_AT(obj,offset) (((long long int *)GRN_BULK_HEAD(obj))[offset])
                                          ^
../../include/groonga/groonga.h:1523:40: note: in definition of macro 'GRN_INT64_PUT'
   long long int _val = (long long int)(val);\
                                        ^~~
../../include/groonga/groonga.h:1493:27: note: in expansion of macro 'GRN_INT64_VALUE_AT'
 #define GRN_TIME_VALUE_AT GRN_INT64_VALUE_AT
                           ^~~~~~~~~~~~~~~~~~
vector.c:280:34: note: in expansion of macro 'GRN_TIME_VALUE_AT'
                                  GRN_ ## type ## _VALUE_AT(target, i)); \
                                  ^~~~
vector.c:315:11: note: in expansion of macro 'PUT_SLICE_VALUES'
           PUT_SLICE_VALUES(TIME);
           ^~~~~~~~~~~~~~~~
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:1470: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:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
time.c:153:16: note: in expansion of macro 'GRN_TIME_VALUE'
     time_raw = GRN_TIME_VALUE(time);
                ^~~~~~~~~~~~~~
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:1467: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:1467: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:1468: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:1468: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:1469: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:1469: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:1470: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:1470: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:1471: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:1471: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:1472: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:1472: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:1473: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:1473: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);
     ^~~~~~~~~~~~~~
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o index_column.lo index_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  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o math.lo math.c
/bin/bash ../../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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: 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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
In file included from ../../include/groonga.h:22:0,
                 from ../../include/groonga/plugin.h:23,
                 from index_column.c:23:
index_column.c: In function 'selector_index_column_df_ratio_between':
../../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
index_column.c:54:9: note: in expansion of macro 'GRN_FLOAT_VALUE'
   min = GRN_FLOAT_VALUE(args[2]);
         ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
index_column.c:55:9: note: in expansion of macro 'GRN_FLOAT_VALUE'
   max = GRN_FLOAT_VALUE(args[3]);
         ^~~~~~~~~~~~~~~
index_column.c: In function 'func_index_column_df_ratio':
../../include/groonga/groonga.h:1475:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
index_column.c:151:15: note: in expansion of macro 'GRN_RECORD_VALUE'
     term_id = GRN_RECORD_VALUE(variable);
               ^~~~~~~~~~~~~~~~
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c math.c  -fPIC -DPIC -o .libs/math.o
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 "string.la" && ln -s "../string.la" "string.la" )
In file included from ../../include/groonga.h:22:0,
                 from ../../include/groonga/plugin.h:23,
                 from math.c:23:
math.c: In function 'func_math_abs':
../../include/groonga/groonga.h:1467:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
math.c:76:46: note: in expansion of macro 'GRN_INT16_VALUE'
     to_type abs_number_raw = (to_type)(func)(getter(number));          \
                                              ^~~~~~
math.c:88:5: note: in expansion of macro 'ABS_CONVERT_TYPE'
     ABS_CONVERT_TYPE(abs, GRN_DB_UINT16, uint16_t, GRN_INT16_VALUE, GRN_UINT16_SET);
     ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1468: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:1356:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
math.c:66:33: note: in expansion of macro 'GRN_UINT16_VALUE'
     setter(ctx, grn_abs_number, getter(number));          \
                                 ^~~~~~
math.c:91:5: note: in expansion of macro 'ABS_AS_IS'
     ABS_AS_IS(GRN_DB_UINT16, uint16_t, GRN_UINT16_VALUE, GRN_UINT16_SET);
     ^~~~~~~~~
../../include/groonga/groonga.h:1469:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
math.c:76:46: note: in expansion of macro 'GRN_INT32_VALUE'
     to_type abs_number_raw = (to_type)(func)(getter(number));          \
                                              ^~~~~~
math.c:94:5: note: in expansion of macro 'ABS_CONVERT_TYPE'
     ABS_CONVERT_TYPE(labs, GRN_DB_UINT32, uint32_t, GRN_INT32_VALUE, GRN_UINT32_SET);
     ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1470: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:1364:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
math.c:66:33: note: in expansion of macro 'GRN_UINT32_VALUE'
     setter(ctx, grn_abs_number, getter(number));          \
                                 ^~~~~~
math.c:97:5: note: in expansion of macro 'ABS_AS_IS'
     ABS_AS_IS(GRN_DB_UINT32, uint32_t, GRN_UINT32_VALUE, GRN_UINT32_SET);
     ^~~~~~~~~
/bin/bash ../../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
../../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
math.c:76:46: note: in expansion of macro 'GRN_INT64_VALUE'
     to_type abs_number_raw = (to_type)(func)(getter(number));          \
                                              ^~~~~~
math.c:100:5: note: in expansion of macro 'ABS_CONVERT_TYPE'
     ABS_CONVERT_TYPE(llabs, GRN_DB_UINT64, uint64_t, GRN_INT64_VALUE, GRN_UINT64_SET);
     ^~~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1472: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:1372:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
math.c:66:33: note: in expansion of macro 'GRN_UINT64_VALUE'
     setter(ctx, grn_abs_number, getter(number));          \
                                 ^~~~~~
math.c:103:5: note: in expansion of macro 'ABS_AS_IS'
     ABS_AS_IS(GRN_DB_UINT64, uint64_t, GRN_UINT64_VALUE, GRN_UINT64_SET);
     ^~~~~~~~~
../../include/groonga/groonga.h:1473:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
math.c:76:46: note: in expansion of macro 'GRN_FLOAT_VALUE'
     to_type abs_number_raw = (to_type)(func)(getter(number));          \
                                              ^~~~~~
math.c:106:5: note: in expansion of macro 'ABS_CONVERT_TYPE'
     ABS_CONVERT_TYPE(fabs, GRN_DB_FLOAT, double, GRN_FLOAT_VALUE, GRN_FLOAT_SET);
     ^~~~~~~~~~~~~~~~
/bin/bash ../../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
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
/bin/bash ../../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 index_column.la -rpath /usr/lib/arm-linux-gnueabihf/groonga/plugins/functions index_column.lo  ../../lib/libgroonga.la
libtool: link: ( cd ".libs" && rm -f "number.la" && ln -s "../number.la" "number.la" )
/bin/bash ../../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 math.la -rpath /usr/lib/arm-linux-gnueabihf/groonga/plugins/functions math.lo -lm ../../lib/libgroonga.la
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/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: ( cd ".libs" && rm -f "time.la" && ln -s "../time.la" "time.la" )
libtool: link: ( cd ".libs" && rm -f "vector.la" && ln -s "../vector.la" "vector.la" )
libtool: link: gcc -shared  -fPIC -DPIC  .libs/math.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,math.so -o .libs/math.so
libtool: link: gcc -shared  -fPIC -DPIC  .libs/index_column.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,index_column.so -o .libs/index_column.so
libtool: link: ( cd ".libs" && rm -f "math.la" && ln -s "../math.la" "math.la" )
libtool: link: ( cd ".libs" && rm -f "index_column.la" && ln -s "../index_column.la" "index_column.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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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:766,
                 from ../../lib/grn_str.h:21,
                 from groonga_suggest_learner.c:19:
groonga_suggest_learner.c: In function 'send_handler':
../../include/groonga/groonga.h:1469: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:1470: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:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1474: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:1475: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:766,
                 from ../../lib/grn_str.h:21,
                 from groonga_suggest_learner.c:19:
../../include/groonga/groonga.h:1469: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:1470: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:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1474: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:1475: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:766,
                 from ../../lib/grn_str.h:21,
                 from groonga_suggest_learner.c:19:
../../include/groonga/groonga.h:1469: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:1470: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:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1474: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:1475: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:766,
                 from ../../lib/grn_str.h:21,
                 from groonga_suggest_learner.c:19:
../../include/groonga/groonga.h:1469: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:1470: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:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1474: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:1475: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:766,
                 from ../../lib/grn_str.h:21,
                 from groonga_suggest_learner.c:19:
../../include/groonga/groonga.h:1469: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:1470: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:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1474: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:1475: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:766,
                 from ../../lib/grn_str.h:21,
                 from groonga_suggest_learner.c:19:
../../include/groonga/groonga.h:1469: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:1470: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:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1474: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:1475: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:766,
                 from ../../lib/grn_str.h:21,
                 from groonga_suggest_learner.c:19:
../../include/groonga/groonga.h:1469: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:1469: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:1469: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:1469: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:1470: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:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1474: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:1475: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:766,
                 from ../../lib/grn_str.h:21,
                 from groonga_suggest_learner.c:19:
../../include/groonga/groonga.h:1469: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:1470: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:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1474: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:1475: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:766,
                 from ../../lib/grn_str.h:21,
                 from groonga_suggest_learner.c:19:
../../include/groonga/groonga.h:1469: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:1470: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:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1474: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:1475: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:766,
                 from ../../lib/grn_str.h:21,
                 from groonga_suggest_learner.c:19:
../../include/groonga/groonga.h:1469: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:1470: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:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1474: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:1475: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:766,
                 from ../../lib/grn_str.h:21,
                 from groonga_suggest_learner.c:19:
../../include/groonga/groonga.h:1469: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:1470: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:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1474: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:1475: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 -Wno-unused-but-set-variable -Wformat -Wno-format-truncation -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: link: g++ -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wformat -Wno-format-truncation -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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
/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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wformat -Wno-format-truncation -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.13.7 && make build)
make[5]: Entering directory '/<<PKGBUILDDIR>>/vendor/nginx-1.13.7'
make -f objs/Makefile
make[6]: Entering directory '/<<PKGBUILDDIR>>/vendor/nginx-1.13.7'
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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/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: In function 'main':
src/core/nginx.c:311: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:314: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:319: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:334: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:391: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:395: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/nginx.c:431: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:433: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:435: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:436: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:439: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:445: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:518: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:653:14: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     ctx.name = "new binary process";
              ^
src/core/nginx.c:685:14: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     env[n++] = "SPARE=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
              ^
src/core/nginx.c:706: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:1113: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:1200: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:1282:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/nginx.c:1302: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:1325: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:1421: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:1474:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/nginx.c:1487: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:1506: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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:200:15: warning: cast increases required alignment of target type [-Wcast-align]
         sin = (struct sockaddr_in *) sa;
               ^
src/core/ngx_inet.c:217: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:496: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:501: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:604:16: warning: cast increases required alignment of target type [-Wcast-align]
         sin6 = (struct sockaddr_in6 *) addr->sockaddr;
                ^
src/core/ngx_inet.c:610: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:730: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:738: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:743: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:792:19: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
     sin = (struct sockaddr_in *) &u->sockaddr;
                   ^~~~~~~~~~~
src/core/ngx_inet.c:815:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             u->err = "invalid host";
                    ^
src/core/ngx_inet.c:837:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             u->err = "invalid port";
                    ^
src/core/ngx_inet.c:861:32: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                         u->err = "invalid port";
                                ^
src/core/ngx_inet.c:886:16: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         u->err = "no host";
                ^
src/core/ngx_inet.c:952:24: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
         sin6 = (struct sockaddr_in6 *) &u->sockaddr;
                        ^~~~~~~~~~~~
src/core/ngx_inet.c:962: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:985:20: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
     sin6 = (struct sockaddr_in6 *) &u->sockaddr;
                    ^~~~~~~~~~~~
src/core/ngx_inet.c:995:16: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         u->err = "invalid host";
                ^
src/core/ngx_inet.c:1005:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             u->err = "invalid host";
                    ^
src/core/ngx_inet.c:1017:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             u->err = "invalid host";
                    ^
src/core/ngx_inet.c:1028:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             u->err = "invalid port";
                    ^
src/core/ngx_inet.c:1047:16: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         u->err = "no host";
                ^
src/core/ngx_inet.c:1055: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:1132:16: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         u->err = "host not found";
                ^
src/core/ngx_inet.c:1155: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:1384:17: warning: cast increases required alignment of target type [-Wcast-align]
         sin61 = (struct sockaddr_in6 *) sa1;
                 ^
src/core/ngx_inet.c:1385:17: warning: cast increases required alignment of target type [-Wcast-align]
         sin62 = (struct sockaddr_in6 *) sa2;
                 ^
src/core/ngx_inet.c:1424:16: warning: cast increases required alignment of target type [-Wcast-align]
         sin1 = (struct sockaddr_in *) sa1;
                ^
src/core/ngx_inet.c:1425: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:1454:16: warning: cast increases required alignment of target type [-Wcast-align]
         sin6 = (struct sockaddr_in6 *) sa;
                ^
src/core/ngx_inet.c:1464: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:1482:16: warning: cast increases required alignment of target type [-Wcast-align]
         sin6 = (struct sockaddr_in6 *) sa;
                ^
src/core/ngx_inet.c:1493: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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
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:109:13: note: in expansion of macro 'ngx_slab_slots'
     slots = ngx_slab_slots(pool);
             ^~~~~~~~~~~~~~
src/core/ngx_slab.c:127:19: warning: cast increases required alignment of target type [-Wcast-align]
     pool->stats = (ngx_slab_stat_t *) p;
                   ^
src/core/ngx_slab.c:136: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:223:13: note: in expansion of macro 'ngx_slab_slots'
     slots = ngx_slab_slots(pool);
             ^~~~~~~~~~~~~~
src/core/ngx_slab.c:328: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:471: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:501: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:556: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:596:25: note: in expansion of macro 'ngx_slab_slots'
                 slots = ngx_slab_slots(pool);
                         ^~~~~~~~~~~~~~
src/core/ngx_slab.c:628: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:634: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:663: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:670: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:727: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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_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:1249: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:1300:20: warning: cast increases required alignment of target type [-Wcast-align]
             sin6 = (struct sockaddr_in6 *) c->local_sockaddr;
                    ^
src/core/ngx_connection.c:1316:19: warning: cast increases required alignment of target type [-Wcast-align]
             sin = (struct sockaddr_in *) c->local_sockaddr;
                   ^
src/core/ngx_connection.c:1327: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:218: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/core/ngx_connection.c: In function 'ngx_tcp_nodelay':
src/core/ngx_connection.c:1385:30: 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/core/ngx_connection.c:9:
src/core/ngx_connection.h:218: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/core/ngx_cycle.c: In function 'ngx_init_cycle':
src/core/ngx_cycle.c:309: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:324: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:812: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:884: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:994: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:1016: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_set_shutdown_timer':
src/core/ngx_cycle.c:1349: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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:456: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:1028:10: warning: cast increases required alignment of target type [-Wcast-align]
     fp = (ngx_flag_t *) (p + cmd->offset);
          ^
src/core/ngx_conf_file.c:1031: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:1067:13: warning: cast increases required alignment of target type [-Wcast-align]
     field = (ngx_str_t *) (p + cmd->offset);
             ^
src/core/ngx_conf_file.c:1070: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:1095: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:1132: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:1170:10: warning: cast increases required alignment of target type [-Wcast-align]
     np = (ngx_int_t *) (p + cmd->offset);
          ^
src/core/ngx_conf_file.c:1173:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/ngx_conf_file.c:1179: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:1201:10: warning: cast increases required alignment of target type [-Wcast-align]
     sp = (size_t *) (p + cmd->offset);
          ^
src/core/ngx_conf_file.c:1203:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/ngx_conf_file.c:1210: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:1232:10: warning: cast increases required alignment of target type [-Wcast-align]
     op = (off_t *) (p + cmd->offset);
          ^
src/core/ngx_conf_file.c:1234:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/ngx_conf_file.c:1241: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:1263:11: warning: cast increases required alignment of target type [-Wcast-align]
     msp = (ngx_msec_t *) (p + cmd->offset);
           ^
src/core/ngx_conf_file.c:1265:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/ngx_conf_file.c:1272: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:1294:10: warning: cast increases required alignment of target type [-Wcast-align]
     sp = (time_t *) (p + cmd->offset);
          ^
src/core/ngx_conf_file.c:1296:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/ngx_conf_file.c:1303: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:1324:12: warning: cast increases required alignment of target type [-Wcast-align]
     bufs = (ngx_bufs_t *) (p + cmd->offset);
            ^
src/core/ngx_conf_file.c:1326:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/ngx_conf_file.c:1333:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "invalid value";
                ^~~~~~~~~~~~~~~
src/core/ngx_conf_file.c:1338: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:1354:10: warning: cast increases required alignment of target type [-Wcast-align]
     np = (ngx_uint_t *) (p + cmd->offset);
          ^
src/core/ngx_conf_file.c:1357: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:1392: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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:349: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:388: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:663: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:932:16: warning: cast increases required alignment of target type [-Wcast-align]
         sin6 = (struct sockaddr_in6 *) ctx->addr.sockaddr;
                ^
src/core/ngx_resolver.c:947: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:1223: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:1254: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:1488: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:1735:18: note: in expansion of macro 'ngx_queue_data'
             rn = ngx_queue_data(q, ngx_resolver_node_t, queue);
                  ^~~~~~~~~~~~~~
src/core/ngx_resolver.c:1761: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:1780: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:1839: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:2114:17: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             err = "invalid name in DNS response";
                 ^
src/core/ngx_resolver.c:2151:21: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                 err = "unexpected A record in DNS response";
                     ^
src/core/ngx_resolver.c:2156:21: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                 err = "invalid A record in DNS response";
                     ^
src/core/ngx_resolver.c:2172:21: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                 err = "unexpected AAAA record in DNS response";
                     ^
src/core/ngx_resolver.c:2177:21: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                 err = "invalid AAAA record in DNS response";
                     ^
src/core/ngx_resolver.c:2395: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:2499: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:2656:17: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             err = "invalid name DNS response";
                 ^
src/core/ngx_resolver.c:2884: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:3221:17: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             err = "invalid name in DNS response";
                 ^
src/core/ngx_resolver.c:3332: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:3374: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:3415: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:3454: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:3490: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:3528: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:3529: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:3571: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:3572: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:3867:16: warning: cast increases required alignment of target type [-Wcast-align]
         sin6 = (struct sockaddr_in6 *) addr->sockaddr;
                ^
src/core/ngx_resolver.c:3882: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:3937:17: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             err = "name is out of response";
                 ^
src/core/ngx_resolver.c:3942: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:4332:9: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         "Format error",     /* FORMERR */
         ^~~~~~~~~~~~~~
src/core/ngx_resolver.c:4333:9: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         "Server failure",   /* SERVFAIL */
         ^~~~~~~~~~~~~~~~
src/core/ngx_resolver.c:4334:9: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         "Host not found",   /* NXDOMAIN */
         ^~~~~~~~~~~~~~~~
src/core/ngx_resolver.c:4335:9: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         "Unimplemented",    /* NOTIMP */
         ^~~~~~~~~~~~~~~
src/core/ngx_resolver.c:4336:9: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         "Operation refused" /* REFUSED */
         ^~~~~~~~~~~~~~~~~~~
src/core/ngx_resolver.c:4344:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "Operation timed out";
                ^~~~~~~~~~~~~~~~~~~~~
src/core/ngx_resolver.c:4347: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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
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
                                                                  ^~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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.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:512:28: warning: cast increases required alignment of target type [-Wcast-align]
     ngx_accept_mutex_ptr = (ngx_atomic_t *) shared;
                            ^
src/event/ngx_event.c:515: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:522: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:530: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:538: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:539: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:540: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:541: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:542: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:543: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:544: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:578: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:893: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:218: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:913: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:989: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:1018:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
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_no_timers_left':
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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:532:27: warning: cast increases required alignment of target type [-Wcast-align]
                     pkt = (struct in_pktinfo *) CMSG_DATA(cmsg);
                           ^
src/event/ngx_event_accept.c:533:27: warning: cast increases required alignment of target type [-Wcast-align]
                     sin = (struct sockaddr_in *) sockaddr;
                           ^
src/event/ngx_event_accept.c:550:28: warning: cast increases required alignment of target type [-Wcast-align]
                     pkt6 = (struct in6_pktinfo *) CMSG_DATA(cmsg);
                            ^
src/event/ngx_event_accept.c:551:28: warning: cast increases required alignment of target type [-Wcast-align]
                     sin6 = (struct sockaddr_in6 *) sockaddr;
                            ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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:218: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_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:218: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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
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:218: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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:218: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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
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:218: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:218: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");
                                          ^~~~~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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
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:218: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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
src/os/unix/ngx_udp_sendmsg_chain.c: In function 'ngx_sendmsg':
src/os/unix/ngx_udp_sendmsg_chain.c:270:19: warning: cast increases required alignment of target type [-Wcast-align]
             sin = (struct sockaddr_in *) c->local_sockaddr;
                   ^
src/os/unix/ngx_udp_sendmsg_chain.c:272:19: warning: cast increases required alignment of target type [-Wcast-align]
             pkt = (struct in_pktinfo *) CMSG_DATA(cmsg);
                   ^
src/os/unix/ngx_udp_sendmsg_chain.c:294:20: warning: cast increases required alignment of target type [-Wcast-align]
             sin6 = (struct sockaddr_in6 *) c->local_sockaddr;
                    ^
src/os/unix/ngx_udp_sendmsg_chain.c:296:20: warning: cast increases required alignment of target type [-Wcast-align]
             pkt6 = (struct in6_pktinfo *) CMSG_DATA(cmsg);
                    ^
src/os/unix/ngx_udp_sendmsg_chain.c:329: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:218: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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", "", NULL },
               ^~~~~~~~~~~~~~~~~
src/os/unix/ngx_process.c:78:34: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     { SIGSYS, "SIGSYS, SIG_IGN", "", NULL },
                                  ^~
src/os/unix/ngx_process.c:80:16: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     { SIGPIPE, "SIGPIPE, SIG_IGN", "", NULL },
                ^~~~~~~~~~~~~~~~~~
src/os/unix/ngx_process.c:80:36: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     { SIGPIPE, "SIGPIPE, SIG_IGN", "", NULL },
                                    ^~
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:337:12: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     action = "";
            ^
src/os/unix/ngx_process.c:347:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             action = ", shutting down";
                    ^
src/os/unix/ngx_process.c:353:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             action = ", exiting";
                    ^
src/os/unix/ngx_process.c:359:24: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                 action = ", stop accepting connections";
                        ^
src/os/unix/ngx_process.c:365:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             action = ", reconfiguring";
                    ^
src/os/unix/ngx_process.c:370:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             action = ", reopening logs";
                    ^
src/os/unix/ngx_process.c:383:24: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                 action = ", ignoring";
                        ^
src/os/unix/ngx_process.c:389:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             action = ", changing binary";
                    ^
src/os/unix/ngx_process.c:419:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             action = ", shutting down";
                    ^
src/os/unix/ngx_process.c:425:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             action = ", exiting";
                    ^
src/os/unix/ngx_process.c:430:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             action = ", reopening logs";
                    ^
src/os/unix/ngx_process.c:436: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:521: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:599: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:615: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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:760: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:796: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_linux_sendfile_chain.c: In function 'ngx_linux_sendfile_chain':
src/os/unix/ngx_linux_sendfile_chain.c:119: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:218: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:144: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:218: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:277: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:218: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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/event/ngx_event_openssl.c: In function 'ngx_ssl_init':
src/event/ngx_event_openssl.c:125: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, "OPENSSL_init_ssl() 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:248: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:170: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:248: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:178: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:248: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:186: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:248: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:194: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:248: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:202: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:248: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:209: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:248: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:217: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:248: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:224: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:248: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:238: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:248: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:244: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:248: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:250: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:248: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:399: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:248: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: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:248: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:413: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:248: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:422: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:248: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:432: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:248: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:442: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:248: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:467: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:248: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:482: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:248: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:526: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:248: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:536: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:248: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:545: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:248: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:598: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:248: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:638: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:248: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:678: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:248: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:694: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:248: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:729: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:248: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_crl':
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]
                       "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:248: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:771: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:248: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:779: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:248: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:1060: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:248: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:1067: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:248: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:1121: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:248: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:1183: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:248: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:1188: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:248: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:1200: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:248: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:1215: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:248: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:1358: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:218: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:1365: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:1548: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:248: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:1620: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:1873: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:1987: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:2150: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:248: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:2275: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:2158: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:2307: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:2158: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:2313: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:2158: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:2323: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:2158: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:2329: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:2158: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:2344: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:2158: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:2350: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:2158: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:2358: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:2158: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:2366: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:2158: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:2392: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:2477: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:2631: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:2742: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:2809: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:2975: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:2158: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:3054: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:2158: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:3060: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:2158: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:3066: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:2158: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:3110: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:2158: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:3119: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:2158: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:3596: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:2158: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:3602: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:2158: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:4203:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:4214: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:2158: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:4220: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:2158: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:248: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:248: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:248: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:248: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:248: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:248: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:248: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:248: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:248: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:248: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:248: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:248: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:248: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:248: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:248: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:248: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:248: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:248: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:248: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:248: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:248: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,
             ^
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";
           ^
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:439: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:1490: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:1919: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:2003:19: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         hash.name = "test_types_hash";
                   ^
src/http/ngx_http.c:2033: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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_gzip_accept_encoding':
src/http/ngx_http_core_module.c:2098: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:165: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:3485:25: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         types_hash.name = "types_hash";
                         ^
src/http/ngx_http_core_module.c:3527: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_root':
src/http/ngx_http_core_module.c:4199:20: 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_limit_except':
src/http/ngx_http_core_module.c:4321: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_set_aio':
src/http/ngx_http_core_module.c:4413:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/ngx_http_core_module.c:4511: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:4523:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/ngx_http_core_module.c:4535: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_open_file_cache':
src/http/ngx_http_core_module.c:4671: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:4755:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/ngx_http_core_module.c:4763:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "invalid value";
                ^~~~~~~~~~~~~~~
src/http/ngx_http_core_module.c:4773: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:4786: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:4803: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:4931: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:833: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 version",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/ngx_http_request.c:79: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:245:20: warning: cast increases required alignment of target type [-Wcast-align]
             sin6 = (struct sockaddr_in6 *) c->local_sockaddr;
                    ^
src/http/ngx_http_request.c:263:19: warning: cast increases required alignment of target type [-Wcast-align]
             sin = (struct sockaddr_in *) c->local_sockaddr;
                   ^
src/http/ngx_http_request.c:314:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     c->log->action = "waiting for request";
                    ^
src/http/ngx_http_request.c:336:24: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         c->log->action = "SSL handshaking";
                        ^
src/http/ngx_http_request.c:355: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:487:28: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             c->log->action = "waiting for request";
                            ^
src/http/ngx_http_request.c:495: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:685: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:218: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:708:24: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         c->log->action = "SSL handshaking";
                        ^
src/http/ngx_http_request.c:763: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:824: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:1045: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:1443: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:1610: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:1626: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:1689: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:165: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:1692: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:165: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:1716: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:164: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: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:164: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:1745: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:164: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:1753: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:164: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:1756: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:164: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:1759: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:164: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:1760: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:164: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:1764: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:164: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:1780: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:2910:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     c->log->action = "closing request";
                    ^
src/http/ngx_http_request.c:2979: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:3070: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:3074: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:218: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:3217: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:3272: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:218: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:3507:17: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     log->action = "logging request";
                 ^
src/http/ngx_http_request.c:3511: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:3674:23: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         uri_separator = "";
                       ^
src/http/ngx_http_request.c:3678: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:970: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:1071: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:1718: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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:728: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:768: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:802: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:816: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:859: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:1232:16: warning: cast increases required alignment of target type [-Wcast-align]
         sin6 = (struct sockaddr_in6 *) r->connection->sockaddr;
                ^
src/http/ngx_http_variables.c:1256:15: warning: cast increases required alignment of target type [-Wcast-align]
         sin = (struct sockaddr_in *) r->connection->sockaddr;
               ^
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 "is 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_variables.c: In function 'ngx_http_variable_sent_connection':
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_variables.c:1916:11: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         p = "upgrade";
           ^
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_variables.c:1920:11: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         p = "keep-alive";
           ^
src/http/ngx_http_variables.c:1924:11: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         p = "close";
           ^
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_variables.c: In function 'ngx_http_variable_request_id':
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_variables.c:2169: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");
                                                       ^~~~~~~~~~~~~~~~~~~~~
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;
            ^
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:248: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_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_variables.c: In function 'ngx_http_variables_init_vars':
src/http/ngx_http_script.c: In function 'ngx_http_script_copy_capture_code':
src/http/ngx_http_variables.c:2692:15: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     hash.name = "variables_hash";
               ^
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:1621: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:1635: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:1636: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:1660: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:1680: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:1718: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:1737:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_var_code_t *) e->ip;
            ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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_upstream.c: In function 'ngx_http_upstream_connect':
src/http/ngx_http_upstream.c:1488: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:1677: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:1847: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:248: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:1962: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_process_header':
src/http/ngx_http_upstream.c:2205: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:2624:28: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             c->log->action = "connecting to upstream";
                            ^
src/http/ngx_http_upstream.c:2625: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:218: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:2794: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:218: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:3109: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:3217:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     c->log->action = "proxying upgraded connection";
                    ^
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_process_upgraded':
src/http/ngx_http_upstream.c:3306: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:218: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:3312: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:218: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:3476:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     c->log->action = "sending to client";
                    ^
src/http/ngx_http_upstream.c:3480: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:218: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:3500:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     c->log->action = "reading upstream";
                    ^
src/http/ngx_http_upstream.c:3503: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:218: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:3803:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     c->log->action = "sending to client";
                    ^
src/http/ngx_http_upstream.c:3813: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:218: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:3854:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     c->log->action = "reading upstream";
                    ^
src/http/ngx_http_upstream.c:3859: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:218: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:4373:32: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     r->connection->log->action = "sending to client";
                                ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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: In function 'ngx_http_upstream_process_header_line':
src/http/ngx_http_upstream.c:4414: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:4891: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:4906: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:5067: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:165: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:6016: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:6019: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:6161: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:6388: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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
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:549: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:994: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:1031: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:1032: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:1244: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:1743: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:1838: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:1915:11: note: in expansion of macro 'ngx_queue_data'
     fcn = ngx_queue_data(q, ngx_http_file_cache_node_t, queue);
           ^~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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_set_slot':
src/http/ngx_http_file_cache.c:2602: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:2628: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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
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:323: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:347: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:857: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:323: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:347: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:1219: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:1306: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:1572: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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
src/http/modules/ngx_http_gzip_filter_module.c: In function 'ngx_http_gzip_window':
src/http/modules/ngx_http_gzip_filter_module.c:1248: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:1272: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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_ssi_filter_module.c: In function 'ngx_http_ssi_init_main_conf':
src/http/modules/ngx_http_ssi_filter_module.c:2850:15: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     hash.name = "ssi_command_hash";
               ^
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_headers_filter_module.c: In function 'ngx_http_parse_expires':
src/http/modules/ngx_http_userid_filter_module.c:537: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:549:23: warning: cast increases required alignment of target type [-Wcast-align]
                 sin = (struct sockaddr_in *) c->local_sockaddr;
                       ^
src/http/modules/ngx_http_headers_filter_module.c:494: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:517:14: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         *err = "invalid value";
              ^
src/http/modules/ngx_http_headers_filter_module.c:524: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:620: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:730: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_expires':
src/http/modules/ngx_http_userid_filter_module.c:765:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_headers_filter_module.c:744:20: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             return "invalid value";
                    ^~~~~~~~~~~~~~~
src/http/modules/ngx_http_headers_filter_module.c: In function 'ngx_http_headers_add':
src/http/modules/ngx_http_headers_filter_module.c:799:15: warning: cast increases required alignment of target type [-Wcast-align]
     headers = (ngx_array_t **) ((char *) hcf + cmd->offset);
               ^
src/http/modules/ngx_http_userid_filter_module.c:782: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:810:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_userid_filter_module.c:826:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "value must be \"off\" or a single letter, digit or \"=\"";
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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
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:523: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:218: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:667:17: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     log->action = "reading PROXY protocol";
                 ^
src/http/v2/ngx_http_v2.c:671: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:2277: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:323: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:347: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:2531: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:323: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:347: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:2718: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:2803: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:2943: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:2966: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:2976: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:4463: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:4493: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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/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";
                ^~~~~~~~~~~~~~~~~~~~~~~~
src/http/modules/ngx_http_static_module.c: In function 'ngx_http_static_handler':
src/http/modules/ngx_http_static_module.c:215:17: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     log->action = "sending response to client";
                 ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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_mirror_module.o \
	src/http/modules/ngx_http_mirror_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_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;
                         ^
src/http/modules/ngx_http_mirror_module.c: In function 'ngx_http_mirror':
src/http/modules/ngx_http_mirror_module.c:219:20: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             return "is duplicate";
                    ^~~~~~~~~~~~~~
src/http/modules/ngx_http_mirror_module.c:227: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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_try_files_module.o \
	src/http/modules/ngx_http_try_files_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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
src/http/modules/ngx_http_try_files_module.c: In function 'ngx_http_try_files_handler':
src/http/modules/ngx_http_try_files_module.c:125:21: warning: cast increases required alignment of target type [-Wcast-align]
             while (*(uintptr_t *) e.ip) {
                     ^
src/http/modules/ngx_http_try_files_module.c:126: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_try_files_module.c:169:21: warning: cast increases required alignment of target type [-Wcast-align]
             while (*(uintptr_t *) e.ip) {
                     ^
src/http/modules/ngx_http_try_files_module.c:170:25: warning: cast increases required alignment of target type [-Wcast-align]
                 code = *(ngx_http_script_code_pt *) e.ip;
                         ^
src/http/modules/ngx_http_try_files_module.c: In function 'ngx_http_try_files':
src/http/modules/ngx_http_try_files_module.c:302:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
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:411:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
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;
                ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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: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: 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: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: 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: 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: 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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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_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: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: 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:453:10: warning: cast increases required alignment of target type [-Wcast-align]
     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";
                    ^~~~~~~~~~~~~~
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_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_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_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_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_map_module.c: In function 'ngx_http_map':
src/http/modules/ngx_http_geo_module.c:1476:14: warning: cast increases required alignment of target type [-Wcast-align]
     header = (ngx_http_geo_header_t *) base;
              ^
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;
                       ^
src/http/modules/ngx_http_geo_module.c:1486: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:1493: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:1503: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:1514: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:1519: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:1592: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:1602: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:1647:10: warning: cast increases required alignment of target type [-Wcast-align]
     vv = (ngx_http_variable_value_t *) p;
          ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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:397:15: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     hash.name = "referer_hash";
               ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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_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 *)
                   ^
src/http/modules/ngx_http_ssl_module.c: In function 'ngx_http_ssl_password_file':
src/http/modules/ngx_http_ssl_module.c:839: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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
src/http/modules/ngx_http_proxy_module.c: In function 'ngx_http_proxy_create_request':
src/http/modules/ngx_http_proxy_module.c:1241:17: warning: cast increases required alignment of target type [-Wcast-align]
         while (*(uintptr_t *) le.ip) {
                 ^
src/http/modules/ngx_http_proxy_module.c:1242: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:1261:13: warning: cast increases required alignment of target type [-Wcast-align]
     while (*(uintptr_t *) le.ip) {
             ^
src/http/modules/ngx_http_proxy_module.c:1263: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:1266:28: warning: cast increases required alignment of target type [-Wcast-align]
         for (val_len = 0; *(uintptr_t *) le.ip; val_len += lcode(&le)) {
                            ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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
src/http/modules/ngx_http_proxy_module.c:1267: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:1374:13: warning: cast increases required alignment of target type [-Wcast-align]
     while (*(uintptr_t *) le.ip) {
             ^
src/http/modules/ngx_http_proxy_module.c:1376: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:1379:28: 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_proxy_module.c:1380: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:1387:21: warning: cast increases required alignment of target type [-Wcast-align]
             while (*(uintptr_t *) e.ip) {
                     ^
src/http/modules/ngx_http_proxy_module.c:1388:25: 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:1398:17: 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:1403:17: warning: cast increases required alignment of target type [-Wcast-align]
         while (*(uintptr_t *) e.ip) {
                 ^
src/http/modules/ngx_http_proxy_module.c:1404: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:1461:17: warning: cast increases required alignment of target type [-Wcast-align]
         while (*(uintptr_t *) e.ip) {
                 ^
src/http/modules/ngx_http_proxy_module.c:1462: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:2580: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:165: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:2596: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:165: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:3327: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:3585: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:3607: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':
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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:4081:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_proxy_module.c:4093: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:4138:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_proxy_module.c:4147: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:4196: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:4225: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:867:17: warning: cast increases required alignment of target type [-Wcast-align]
         while (*(uintptr_t *) le.ip) {
                 ^
src/http/modules/ngx_http_fastcgi_module.c:869: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:872: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:875: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:876: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:1028:17: warning: cast increases required alignment of target type [-Wcast-align]
         while (*(uintptr_t *) le.ip) {
                 ^
src/http/modules/ngx_http_fastcgi_module.c:1030: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:1033: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:1036: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:1037: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:1044:25: warning: cast increases required alignment of target type [-Wcast-align]
                 while (*(uintptr_t *) e.ip) {
                         ^
src/http/modules/ngx_http_fastcgi_module.c:1045: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:1067:21: warning: cast increases required alignment of target type [-Wcast-align]
             while (*(uintptr_t *) e.ip) {
                     ^
src/http/modules/ngx_http_fastcgi_module.c:1068: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:3099: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:3369: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:3527: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:3632:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_fastcgi_module.c:3644: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:3689:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_fastcgi_module.c:3698: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:3747: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:860:17: warning: cast increases required alignment of target type [-Wcast-align]
         while (*(uintptr_t *) le.ip) {
                 ^
src/http/modules/ngx_http_uwsgi_module.c:862: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:865: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:868: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:869: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:990:17: warning: cast increases required alignment of target type [-Wcast-align]
         while (*(uintptr_t *) le.ip) {
                 ^
src/http/modules/ngx_http_uwsgi_module.c:992: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:995: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:998: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:999: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:1006:25: warning: cast increases required alignment of target type [-Wcast-align]
                 while (*(uintptr_t *) e.ip) {
                         ^
src/http/modules/ngx_http_uwsgi_module.c:1007: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:1020: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:1026:21: warning: cast increases required alignment of target type [-Wcast-align]
             while (*(uintptr_t *) e.ip) {
                     ^
src/http/modules/ngx_http_uwsgi_module.c:1027: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:1789: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:2060: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:2081: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:2162:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_uwsgi_module.c:2175: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:2221:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_uwsgi_module.c:2230: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:2279: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:2308: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:672:17: warning: cast increases required alignment of target type [-Wcast-align]
         while (*(uintptr_t *) le.ip) {
                 ^
src/http/modules/ngx_http_scgi_module.c:674: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:677: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:680: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:681: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:791:17: warning: cast increases required alignment of target type [-Wcast-align]
         while (*(uintptr_t *) le.ip) {
                 ^
src/http/modules/ngx_http_scgi_module.c:793: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:796: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:799: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:800: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:807:25: warning: cast increases required alignment of target type [-Wcast-align]
                 while (*(uintptr_t *) e.ip) {
                         ^
src/http/modules/ngx_http_scgi_module.c:808: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:821: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:827:21: warning: cast increases required alignment of target type [-Wcast-align]
             while (*(uintptr_t *) e.ip) {
                     ^
src/http/modules/ngx_http_scgi_module.c:828: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:1534: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:1797: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:1817: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:1875:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_scgi_module.c:1887: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:1932:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_scgi_module.c:1941: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:1990: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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:130: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:164: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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:196: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:198: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:203: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:208: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:214: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:219: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:523: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:531:14: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
       result = "false";
              ^
/<<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:1135: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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -I/<<PKGBUILDDIR>>/include   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2 -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/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
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";
            ^~~~~~~~~~~~~~
objs/ngx_modules.c:131:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_core_module",
     ^~~~~~~~~~~~~~~~~
objs/ngx_modules.c:132:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_errlog_module",
     ^~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:133:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_conf_module",
     ^~~~~~~~~~~~~~~~~
objs/ngx_modules.c:134:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_openssl_module",
     ^~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:135:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_regex_module",
     ^~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:136:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_events_module",
     ^~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:137:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_event_core_module",
     ^~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:138:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_epoll_module",
     ^~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:139:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_module",
     ^~~~~~~~~~~~~~~~~
objs/ngx_modules.c:140:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_core_module",
     ^~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:141:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_log_module",
     ^~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:142:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_upstream_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:143:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_v2_module",
     ^~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:144:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_static_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:145:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_autoindex_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:146:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_index_module",
     ^~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:147:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_mirror_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:148:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_try_files_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:149:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_auth_basic_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:150:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_access_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:151:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_limit_conn_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:152:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_limit_req_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:153:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_geo_module",
     ^~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:154:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_map_module",
     ^~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:155:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_split_clients_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:156:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_referer_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:157:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_rewrite_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:158:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_ssl_module",
     ^~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:159:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_proxy_module",
     ^~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:160:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_fastcgi_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:161:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_uwsgi_module",
     ^~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:162:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_scgi_module",
     ^~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:163:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_memcached_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:164:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_empty_gif_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:165:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_browser_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:166:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_upstream_hash_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:167:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_upstream_ip_hash_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:168:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_upstream_least_conn_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:169:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_upstream_keepalive_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:170:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_upstream_zone_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:171:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_stub_status_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:172:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_groonga_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:173:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ndk_http_module",
     ^~~~~~~~~~~~~~~~~
objs/ngx_modules.c:174:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_write_filter_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:175:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_header_filter_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:176:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_chunked_filter_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:177:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_v2_filter_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:178:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_range_header_filter_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:179:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_gzip_filter_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:180:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_postpone_filter_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:181:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_ssi_filter_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:182:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_charset_filter_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:183:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_userid_filter_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:184:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_headers_filter_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:185:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "__ngx_http_upstream_keepalive_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:186:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_mruby_module",
     ^~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:187:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_copy_filter_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:188:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_range_body_filter_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
objs/ngx_modules.c:189:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "ngx_http_not_modified_filter_module",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
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_mirror_module.o \
objs/src/http/modules/ngx_http_try_files_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 \
-L/<<PKGBUILDDIR>>/lib/.libs -L/<<PKGBUILDDIR>>/vendor/onigmo-source/.libs -Wl,-z,relro -Wl,-z,now -ldl -lpthread -lcrypt -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.13.7'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/vendor/nginx-1.13.7'
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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:766,
                 from ../lib/grn_str.h:21,
                 from groonga_benchmark.c:40:
groonga_benchmark.c: In function 'report_command':
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:352:11: note: in expansion of macro 'GRN_TIME_VALUE'
   start = GRN_TIME_VALUE(start_time) - GRN_TIME_VALUE(&grntest_starttime);
           ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:352:40: note: in expansion of macro 'GRN_TIME_VALUE'
   start = GRN_TIME_VALUE(start_time) - GRN_TIME_VALUE(&grntest_starttime);
                                        ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:353:9: note: in expansion of macro 'GRN_TIME_VALUE'
   end = GRN_TIME_VALUE(end_time) - GRN_TIME_VALUE(&grntest_starttime);
         ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:353: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:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:382:13: note: in expansion of macro 'GRN_TIME_VALUE'
   latency = GRN_TIME_VALUE(&end_time) - GRN_TIME_VALUE(&grntest_starttime);
             ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:382: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:475: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:766,
                 from ../lib/grn_str.h:21,
                 from groonga_benchmark.c:40:
groonga_benchmark.c: In function 'do_load_command':
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:765:19: note: in expansion of macro 'GRN_TIME_VALUE'
     *load_start = GRN_TIME_VALUE(&start_time);
                   ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:778: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:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:864:14: note: in expansion of macro 'GRN_TIME_VALUE'
       self = GRN_TIME_VALUE(&end_time) - GRN_TIME_VALUE(&start_time);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:864: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:1495: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:1038:19: note: in expansion of macro 'GRN_PTR_VALUE_AT'
         command = GRN_PTR_VALUE_AT(commands, i);
                   ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:1066: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:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:1066: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:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:1067: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:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:1067: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':
groonga.c: In function 'request_timer_register':
groonga.c:607: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:615:23: warning: cast from pointer to integer of different size [-Wpointer-to-int-cast]
   grn_id id = (grn_id)(uint64_t)timer_id;
                       ^
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:3096:18: note: in expansion of macro 'GRN_TIME_VALUE'
   sec = (time_t)(GRN_TIME_VALUE(&grntest_starttime)/1000000);
                  ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:3104:15: note: in expansion of macro 'GRN_TIME_VALUE'
               GRN_TIME_VALUE(&grntest_starttime), grn_get_version());
               ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1471:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1474:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:3109:15: note: in expansion of macro 'GRN_TIME_VALUE'
               GRN_TIME_VALUE(&grntest_starttime), grn_get_version());
               ^~~~~~~~~~~~~~
groonga.c: In function 'do_mbreq':
groonga.c:1913:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:1945: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:766,
                 from groonga.c:29:
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
groonga.c:1955:20: note: in expansion of macro 'GRN_UINT32_VALUE'
           expire = GRN_UINT32_VALUE(&expire_buf);
                    ^~~~~~~~~~~~~~~~
groonga.c:1913:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:1961:11: note: in expansion of macro 'GRN_MSG_MBRES'
           GRN_MSG_MBRES({
           ^~~~~~~~~~~~~
groonga.c:1913:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:1968:11: note: in expansion of macro 'GRN_MSG_MBRES'
           GRN_MSG_MBRES({
           ^~~~~~~~~~~~~
groonga.c:1971:14: warning: cast increases required alignment of target type [-Wcast-align]
             ((grn_msg *)re)->header.cas = GRN_UINT64_VALUE(&cas_buf);
              ^
groonga.c:1914:5: note: in definition of macro 'GRN_MSG_MBRES'
     block\
     ^~~~~~
   }\
      
../include/groonga/groonga.h:1472: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:1914:5: note: in definition of macro 'GRN_MSG_MBRES'
     block\
     ^~~~~~
   }\
      
groonga.c:1971:43: note: in expansion of macro 'GRN_UINT64_VALUE'
             ((grn_msg *)re)->header.cas = GRN_UINT64_VALUE(&cas_buf);
                                           ^~~~~~~~~~~~~~~~
groonga.c:1993: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:1994:33: warning: cast increases required alignment of target type [-Wcast-align]
       uint32_t expire = ntohl(*((uint32_t *)(body + 4)));
                                 ^
groonga.c:1913:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2008:9: note: in expansion of macro 'GRN_MSG_MBRES'
         GRN_MSG_MBRES({
         ^~~~~~~~~~~~~
groonga.c:1913:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2014:13: note: in expansion of macro 'GRN_MSG_MBRES'
             GRN_MSG_MBRES({
             ^~~~~~~~~~~~~
groonga.c:1913:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2040:15: note: in expansion of macro 'GRN_MSG_MBRES'
               GRN_MSG_MBRES({
               ^~~~~~~~~~~~~
groonga.c:2041:18: warning: cast increases required alignment of target type [-Wcast-align]
                 ((grn_msg *)re)->header.cas = cas_id;
                  ^
groonga.c:1914:5: note: in definition of macro 'GRN_MSG_MBRES'
     block\
     ^~~~~~
   }\
      
In file included from ../include/groonga.h:22:0,
                 from ../lib/grn.h:766,
                 from groonga.c:29:
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
groonga.c:2054:23: note: in expansion of macro 'GRN_UINT32_VALUE'
             oexpire = GRN_UINT32_VALUE(&uint32_buf);
                       ^~~~~~~~~~~~~~~~
groonga.c:1913:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2061:17: note: in expansion of macro 'GRN_MSG_MBRES'
                 GRN_MSG_MBRES({
                 ^~~~~~~~~~~~~
groonga.c:1913:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2068: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:766,
                 from groonga.c:29:
../include/groonga/groonga.h:1472: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:2079:34: note: in expansion of macro 'GRN_UINT64_VALUE'
               if (header->cas != GRN_UINT64_VALUE(&cas_buf)) {
                                  ^~~~~~~~~~~~~~~~
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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:1913:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2080:17: note: in expansion of macro 'GRN_MSG_MBRES'
                 GRN_MSG_MBRES({
                 ^~~~~~~~~~~~~
groonga.c:1913:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2106:17: note: in expansion of macro 'GRN_MSG_MBRES'
                 GRN_MSG_MBRES({
                 ^~~~~~~~~~~~~
groonga.c:2107:20: warning: cast increases required alignment of target type [-Wcast-align]
                   ((grn_msg *)re)->header.cas = cas_id;
                    ^
groonga.c:1914:5: note: in definition of macro 'GRN_MSG_MBRES'
     block\
     ^~~~~~
   }\
      
groonga.c:1913:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2128:9: note: in expansion of macro 'GRN_MSG_MBRES'
         GRN_MSG_MBRES({
         ^~~~~~~~~~~~~
groonga.c:1913:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2133: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:2152:33: warning: cast increases required alignment of target type [-Wcast-align]
       uint32_t expire = ntohl(*((uint32_t *)(body + 16)));
                                 ^
groonga.c:1913:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2162: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:766,
                 from groonga.c:29:
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
groonga.c:2179:21: note: in expansion of macro 'GRN_UINT32_VALUE'
           oexpire = GRN_UINT32_VALUE(&uint32_buf);
                     ^~~~~~~~~~~~~~~~
groonga.c:1913:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2184:15: note: in expansion of macro 'GRN_MSG_MBRES'
               GRN_MSG_MBRES({
               ^~~~~~~~~~~~~
groonga.c:1913:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2212:9: note: in expansion of macro 'GRN_MSG_MBRES'
         GRN_MSG_MBRES({
         ^~~~~~~~~~~~~
groonga.c:2215:28: warning: cast increases required alignment of target type [-Wcast-align]
           grn_hton(&delta, (uint64_t *)GRN_BULK_HEAD(re), 8);
                            ^
groonga.c:1914:5: note: in definition of macro 'GRN_MSG_MBRES'
     block\
     ^~~~~~
   }\
      
groonga.c:2215: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:2232:26: warning: cast increases required alignment of target type [-Wcast-align]
         expire = ntohl(*((uint32_t *)(body)));
                          ^
groonga.c:1913:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2254:9: note: in expansion of macro 'GRN_MSG_MBRES'
         GRN_MSG_MBRES({
         ^~~~~~~~~~~~~
groonga.c:1913:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2264:5: note: in expansion of macro 'GRN_MSG_MBRES'
     GRN_MSG_MBRES({
     ^~~~~~~~~~~~~
groonga.c:1913:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2279: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:766,
                 from groonga.c:29:
../include/groonga/groonga.h:1470:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
groonga.c:2288:18: note: in expansion of macro 'GRN_UINT32_VALUE'
         expire = GRN_UINT32_VALUE(&uint32_buf);
                  ^~~~~~~~~~~~~~~~
groonga.c:1913:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2292:11: note: in expansion of macro 'GRN_MSG_MBRES'
           GRN_MSG_MBRES({
           ^~~~~~~~~~~~~
groonga.c:1913:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2299:11: note: in expansion of macro 'GRN_MSG_MBRES'
           GRN_MSG_MBRES({
           ^~~~~~~~~~~~~
groonga.c:2303:14: warning: cast increases required alignment of target type [-Wcast-align]
             ((grn_msg *)re)->header.cas = GRN_UINT64_VALUE(&uint64_buf);
              ^
groonga.c:1914:5: note: in definition of macro 'GRN_MSG_MBRES'
     block\
     ^~~~~~
   }\
      
../include/groonga/groonga.h:1472: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:1914:5: note: in definition of macro 'GRN_MSG_MBRES'
     block\
     ^~~~~~
   }\
      
groonga.c:2303:43: note: in expansion of macro 'GRN_UINT64_VALUE'
             ((grn_msg *)re)->header.cas = GRN_UINT64_VALUE(&uint64_buf);
                                           ^~~~~~~~~~~~~~~~
groonga.c:1913:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2325:9: note: in expansion of macro 'GRN_MSG_MBRES'
         GRN_MSG_MBRES({
         ^~~~~~~~~~~~~
groonga.c:1913:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2335:9: note: in expansion of macro 'GRN_MSG_MBRES'
         GRN_MSG_MBRES({
         ^~~~~~~~~~~~~
groonga.c:1913:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2344:7: note: in expansion of macro 'GRN_MSG_MBRES'
       GRN_MSG_MBRES({
       ^~~~~~~~~~~~~
groonga.c:1913:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2355:5: note: in expansion of macro 'GRN_MSG_MBRES'
     GRN_MSG_MBRES({
     ^~~~~~~~~~~~~
groonga.c: In function 'h_worker':
groonga.c:2427:14: warning: cast increases required alignment of target type [-Wcast-align]
     hc.msg = (grn_msg *)msg;
              ^
groonga.c: In function 'h_handler':
groonga.c:2448:19: warning: cast increases required alignment of target type [-Wcast-align]
   grn_com *com = ((grn_msg *)msg)->u.peer;
                   ^
groonga.c:2457: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:2526: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:2593: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:2611:19: warning: cast increases required alignment of target type [-Wcast-align]
   grn_com *com = ((grn_msg *)msg)->u.peer;
                   ^
groonga.c:2628:33: warning: cast increases required alignment of target type [-Wcast-align]
     edge = grn_edges_add(ctx, &((grn_msg *)msg)->edge_id, &added);
                                 ^
/bin/bash ../libtool  --tag=CXX   --mode=link g++  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wno-unused-but-set-variable -Wformat -Wno-format-truncation -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  
groonga.c: In function 'send_ready_notify':
groonga.c:803: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 -Wno-unused-but-set-variable -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wformat -Wno-format-truncation -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'
Making all in tmpfiles.d
make[4]: Entering directory '/<<PKGBUILDDIR>>/data/tmpfiles.d'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/data/tmpfiles.d'
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 -j1 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 arrow.h arrow.hpp cache.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 '/<<PKGBUILDDIR>>/debian/tmp/usr/include/groonga/groonga'
 /usr/bin/install -c -m 644 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 groonga.hpp '/<<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'
Making install in groonga-log
make[3]: Entering directory '/<<PKGBUILDDIR>>/vendor/groonga-log'
make[4]: Entering directory '/<<PKGBUILDDIR>>/vendor/groonga-log'
make[4]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/groonga-log'
 /usr/bin/install -c -m 644 ../groonga-log-source/README.md ../groonga-log-source/doc/text/lgpl-2.1.txt '/<<PKGBUILDDIR>>/debian/tmp/usr/share/groonga/groonga-log'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby'
 /usr/bin/install -c -m 644 ../groonga-log-source/lib/groonga-log.rb '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/groonga-log'
 /usr/bin/install -c -m 644 ../groonga-log-source/lib/groonga-log/parser.rb ../groonga-log-source/lib/groonga-log/statistic.rb ../groonga-log-source/lib/groonga-log/version.rb '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/groonga-log'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/vendor/groonga-log'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/vendor/groonga-log'
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_input.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 labeled_arguments.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_data_size_estimator.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'
 /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]: Nothing to be done for 'install-data-am'.
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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 keys_parsable.rb dynamic_columns.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 index_column.la math.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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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: relinking 'index_column.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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 index_column.la -rpath /usr/lib/arm-linux-gnueabihf/groonga/plugins/functions index_column.lo ../../lib/libgroonga.la -inst-prefix-dir /<<PKGBUILDDIR>>/debian/tmp)
libtool: relink: gcc -shared  -fPIC -DPIC  .libs/index_column.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,index_column.so -o .libs/index_column.so
libtool: install: /usr/bin/install -c .libs/index_column.soT /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/functions/index_column.so
libtool: install: /usr/bin/install -c .libs/index_column.lai /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/functions/index_column.la
libtool: warning: relinking 'math.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 -Wno-unused-but-set-variable -Wno-pointer-sign -Wno-declaration-after-statement -Wformat -Wno-format-truncation -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 math.la -rpath /usr/lib/arm-linux-gnueabihf/groonga/plugins/functions math.lo -lm ../../lib/libgroonga.la -inst-prefix-dir /<<PKGBUILDDIR>>/debian/tmp)
libtool: relink: gcc -shared  -fPIC -DPIC  .libs/math.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,math.so -o .libs/math.so
libtool: install: /usr/bin/install -c .libs/math.soT /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/functions/math.so
libtool: install: /usr/bin/install -c .libs/math.lai /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/functions/math.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'
 /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]: Nothing to be done for 'install-data-am'.
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.13.7 && make build)
make[4]: Entering directory '/<<PKGBUILDDIR>>/vendor/nginx-1.13.7'
make -f objs/Makefile
make[5]: Entering directory '/<<PKGBUILDDIR>>/vendor/nginx-1.13.7'
make[5]: Nothing to be done for 'build'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/vendor/nginx-1.13.7'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/vendor/nginx-1.13.7'
make[4]: Entering directory '/<<PKGBUILDDIR>>/src/httpd'
(cd ../../vendor/nginx-1.13.7 && make install)
make[5]: Entering directory '/<<PKGBUILDDIR>>/vendor/nginx-1.13.7'
make -f objs/Makefile install
make[6]: Entering directory '/<<PKGBUILDDIR>>/vendor/nginx-1.13.7'
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/groonga' \
	|| mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/var/run/groonga'
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.13.7'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/vendor/nginx-1.13.7'
make[4]: Nothing to be done for 'install-data-am'.
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'
 /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]: Nothing to be done for 'install-data-am'.
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'
 /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'
 /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'
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/sbin'
 /usr/bin/install -c groonga-httpd-restart '/<<PKGBUILDDIR>>/debian/tmp/usr/sbin'
make[4]: Nothing to be done for 'install-data-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/data/scripts'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/data/scripts'
Making install in tmpfiles.d
make[3]: Entering directory '/<<PKGBUILDDIR>>/data/tmpfiles.d'
make[4]: Entering directory '/<<PKGBUILDDIR>>/data/tmpfiles.d'
make[4]: Nothing to be done for 'install-exec-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/data/tmpfiles.d'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/data/tmpfiles.d'
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'
 /usr/bin/install -c -m 644 groonga-httpd.conf '/<<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'
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/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/6.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/troubleshooting'
 /usr/bin/install -c -m 644  html/troubleshooting/different_results_with_the_same_keyword.html html/troubleshooting/how_to_analyze_error_message.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/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 html/reference/window_function.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/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/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/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/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/reference/window_functions'
 /usr/bin/install -c -m 644  html/reference/window_functions/record_number.html html/reference/window_functions/window_count.html html/reference/window_functions/window_record_number.html html/reference/window_functions/window_sum.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/en/html/reference/window_functions'
 /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/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_records.html html/reference/functions/in_values.html html/reference/functions/math_abs.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/snippet_html.html html/reference/functions/string_length.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_new.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-3.1.0.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/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'
 /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/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/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/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/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/6.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/troubleshooting'
 /usr/bin/install -c -m 644  html/troubleshooting/different_results_with_the_same_keyword.html html/troubleshooting/how_to_analyze_error_message.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/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 html/reference/window_function.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/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/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/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/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/reference/window_functions'
 /usr/bin/install -c -m 644  html/reference/window_functions/record_number.html html/reference/window_functions/window_count.html html/reference/window_functions/window_record_number.html html/reference/window_functions/window_sum.html '/<<PKGBUILDDIR>>/debian/tmp/usr/share/doc/groonga/ja/html/reference/window_functions'
 /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/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_records.html html/reference/functions/in_values.html html/reference/functions/math_abs.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/snippet_html.html html/reference/functions/string_length.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_new.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-3.1.0.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/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'
 /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/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/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/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_missing -a
   dh_strip -a
   dh_makeshlibs -a
   dh_shlibdeps -a
dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/groonga-bin/usr/bin/groonga debian/groonga-bin/usr/bin/groonga-benchmark debian/groonga-bin/usr/bin/grndb 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 debian/groonga-bin/usr/bin/groonga-benchmark debian/groonga-bin/usr/bin/grndb 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 debian/groonga-bin/usr/bin/groonga-benchmark debian/groonga-bin/usr/bin/grndb 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-bin/usr/bin/groonga debian/groonga-bin/usr/bin/groonga-benchmark debian/groonga-bin/usr/bin/grndb 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 debian/groonga-bin/usr/bin/groonga-benchmark debian/groonga-bin/usr/bin/grndb were not linked against libdl.so.2 (they use none of the library's symbols)
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/groonga-plugin-suggest/usr/bin/groonga-suggest-httpd debian/groonga-plugin-suggest/usr/bin/groonga-suggest-learner debian/groonga-plugin-suggest/usr/bin/groonga-suggest-create-dataset 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-learner debian/groonga-plugin-suggest/usr/bin/groonga-suggest-create-dataset 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-learner debian/groonga-plugin-suggest/usr/bin/groonga-suggest-create-dataset 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-httpd/usr/sbin/groonga-httpd was not linked against libm.so.6 (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 ld-linux-armhf.so.3 (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 'groonga-tokenizer-mecab' in '../groonga-tokenizer-mecab_7.0.9-1_armhf.deb'.
dpkg-deb: building package 'groonga' in '../groonga_7.0.9-1_armhf.deb'.
dpkg-deb: building package 'groonga-plugin-suggest' in '../groonga-plugin-suggest_7.0.9-1_armhf.deb'.
dpkg-deb: building package 'groonga-httpd' in '../groonga-httpd_7.0.9-1_armhf.deb'.
dpkg-deb: building package 'libgroonga-dev' in '../libgroonga-dev_7.0.9-1_armhf.deb'.
dpkg-deb: building package 'groonga-tokenizer-mecab-dbgsym' in '../groonga-tokenizer-mecab-dbgsym_7.0.9-1_armhf.deb'.
dpkg-deb: building package 'groonga-plugin-suggest-dbgsym' in '../groonga-plugin-suggest-dbgsym_7.0.9-1_armhf.deb'.
dpkg-deb: building package 'groonga-token-filter-stem' in '../groonga-token-filter-stem_7.0.9-1_armhf.deb'.
dpkg-deb: building package 'groonga-token-filter-stem-dbgsym' in '../groonga-token-filter-stem-dbgsym_7.0.9-1_armhf.deb'.
dpkg-deb: building package 'groonga-bin' in '../groonga-bin_7.0.9-1_armhf.deb'.
dpkg-deb: building package 'libgroonga0' in '../libgroonga0_7.0.9-1_armhf.deb'.
dpkg-deb: building package 'groonga-httpd-dbgsym' in '../groonga-httpd-dbgsym_7.0.9-1_armhf.deb'.
dpkg-deb: building package 'groonga-bin-dbgsym' in '../groonga-bin-dbgsym_7.0.9-1_armhf.deb'.
dpkg-deb: building package 'libgroonga0-dbgsym' in '../libgroonga0-dbgsym_7.0.9-1_armhf.deb'.
 dpkg-genbuildinfo --build=any
 dpkg-genchanges --build=any -mRaspbian mythic lxc autobuilder 1 <root@raspbian.org> >../groonga_7.0.9-1_armhf.changes
dpkg-genchanges: info: binary-only arch-specific upload (source code and arch-indep packages not included)
 dpkg-source --after-build groonga-7.0.9
dpkg-buildpackage: info: binary-only upload (no source included)
--------------------------------------------------------------------------------
Build finished at 2017-12-09T10:48:17Z

Finished
--------

I: Built successfully

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


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


groonga_7.0.9-1_armhf.changes:
------------------------------

Format: 1.8
Date: Sun, 03 Dec 2017 13:18:43 +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: 7.0.9-1
Distribution: buster-staging
Urgency: medium
Maintainer: Raspbian mythic lxc autobuilder 1 <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
Changes:
 groonga (7.0.9-1) unstable; urgency=medium
 .
   * New upstream release.
   * debian/patches/fix-nginx-FTBFS-on-kfreebsd.patch
     - Refresh patch to fix FTBFS on kFreeBSD.
Checksums-Sha1:
 e36affec34f3fcc070864176279d9170ca6cc58e 141796 groonga-bin-dbgsym_7.0.9-1_armhf.deb
 6700b6153b7be1c32c5d8f2e3f99cae539f4b743 253448 groonga-bin_7.0.9-1_armhf.deb
 a146067a75a54dc7efb20f039f5404dcc3510f7c 2087104 groonga-httpd-dbgsym_7.0.9-1_armhf.deb
 48d05f77b3f13885688b70cbf648f27649e4e40f 318604 groonga-httpd_7.0.9-1_armhf.deb
 f21a13388f027246328213d71c42025cc6a33f7e 123960 groonga-plugin-suggest-dbgsym_7.0.9-1_armhf.deb
 5ff5e71de930318e20c361ef63087a2e86ac6e82 37312 groonga-plugin-suggest_7.0.9-1_armhf.deb
 ceb4c5cfed46ad4d64942760bf45b0aaecb9c664 10072 groonga-token-filter-stem-dbgsym_7.0.9-1_armhf.deb
 d6b0303fd6ce11f9c22946309d728e80b30e0168 12104 groonga-token-filter-stem_7.0.9-1_armhf.deb
 9bdae0ea5c05566e2cda8dfa37ff95de1b5cc5cc 13868 groonga-tokenizer-mecab-dbgsym_7.0.9-1_armhf.deb
 0395a0f9c05dc6b55821789e87e85bedadfca376 13728 groonga-tokenizer-mecab_7.0.9-1_armhf.deb
 ed45bb68f8241ae63f3ce558efcc60e66968aae8 8840 groonga_7.0.9-1_armhf.buildinfo
 919366f88d972ee2252b3f14fd82f8f2fb01e382 9024 groonga_7.0.9-1_armhf.deb
 30fb7722654698288512cbf7429636a3e2968283 33792 libgroonga-dev_7.0.9-1_armhf.deb
 1af0ce4d18a97338cc61d0b6e98a30fe6547cece 3941732 libgroonga0-dbgsym_7.0.9-1_armhf.deb
 7c52d454438dbf8fedcac88a64ec2475f5f909ca 1322320 libgroonga0_7.0.9-1_armhf.deb
Checksums-Sha256:
 be06877a3847526ba84b9b454fc989311c2960205766fdc313509fd17130adc1 141796 groonga-bin-dbgsym_7.0.9-1_armhf.deb
 343ec580ca3a84b8c03a230f8aab5d7987bde318b3a86b1f23422ee41d1f31ab 253448 groonga-bin_7.0.9-1_armhf.deb
 8634e2b0bb5d236de474064ec2e5729308fe5fb32121048f7beefed968c1125c 2087104 groonga-httpd-dbgsym_7.0.9-1_armhf.deb
 bd1b3aafe6bc9a839729f2efc46d6e844a0b45a9a8e8fb9e9c7d42416c7bf239 318604 groonga-httpd_7.0.9-1_armhf.deb
 dd2f665c7becfd0eb6404393817b512a09f1a4132fe82c73421139ae2647bc20 123960 groonga-plugin-suggest-dbgsym_7.0.9-1_armhf.deb
 e3dc298d24162c3378b99421cd8564fffc59bfeba65e8a375a7b337a7890f846 37312 groonga-plugin-suggest_7.0.9-1_armhf.deb
 298c37220a3a449a30365261b4f79cf36296d77d3d0b0df6484f3fdf782ca71d 10072 groonga-token-filter-stem-dbgsym_7.0.9-1_armhf.deb
 25e43f40e590b0c9e5298d28f0f12355167a07eddeaccfd075ae1428c1629523 12104 groonga-token-filter-stem_7.0.9-1_armhf.deb
 359df22e728fb4e58dba3857393373f57a3bb469adacdd256e1e0bd04367ca41 13868 groonga-tokenizer-mecab-dbgsym_7.0.9-1_armhf.deb
 f8a134cc7fe4b01408bfe8c6594f278ca217269ce6aeca42fba88fd6c44ac489 13728 groonga-tokenizer-mecab_7.0.9-1_armhf.deb
 843df6721b3c7f946a2636bca137d6ec529a28ad6980c1279a44cbebd04ca744 8840 groonga_7.0.9-1_armhf.buildinfo
 583bee9dc40ca2b17e73f9561d63a5250fa02cbb4522587cbe3549c58d144654 9024 groonga_7.0.9-1_armhf.deb
 ef6ac1d8c3130094a5b510f6aefe39f9d1d0d50f762d161e54f5e3ac40f7713b 33792 libgroonga-dev_7.0.9-1_armhf.deb
 da172a92977f804b05ac2ec96f1cc972728565651c6db7fbdc329ebd8614e968 3941732 libgroonga0-dbgsym_7.0.9-1_armhf.deb
 7a63eb0872fd9a8972f56b002b31f62b6ca0e7cdd823dbe05a6a4b35607aa397 1322320 libgroonga0_7.0.9-1_armhf.deb
Files:
 2d67cb44225d8fd6295f0bc7e8a28a2e 141796 debug optional groonga-bin-dbgsym_7.0.9-1_armhf.deb
 b8ed30b72cc37ca76dded4b966fea077 253448 database optional groonga-bin_7.0.9-1_armhf.deb
 ff8553c3c4954771598e955fd1a59c63 2087104 debug optional groonga-httpd-dbgsym_7.0.9-1_armhf.deb
 4b66aa9f0a53c8844227d68abf42d6ce 318604 database optional groonga-httpd_7.0.9-1_armhf.deb
 b955698f809bad6eb622d1b3bcfe178b 123960 debug optional groonga-plugin-suggest-dbgsym_7.0.9-1_armhf.deb
 fae9e1b0c8ad215dc71fef8a1e05f434 37312 libs optional groonga-plugin-suggest_7.0.9-1_armhf.deb
 8cb3c37433fca2c67eeff7cc66a9b82d 10072 debug optional groonga-token-filter-stem-dbgsym_7.0.9-1_armhf.deb
 93ce9a90a97c14ade211f07d70e75d13 12104 libs optional groonga-token-filter-stem_7.0.9-1_armhf.deb
 8742e7fbca034b133ce7ff3799d610d3 13868 debug optional groonga-tokenizer-mecab-dbgsym_7.0.9-1_armhf.deb
 23faf2f27b3530aa9e1b52da7761ea74 13728 libs optional groonga-tokenizer-mecab_7.0.9-1_armhf.deb
 f050d59a27b380c3e72da57b3af0b7d5 8840 database optional groonga_7.0.9-1_armhf.buildinfo
 e810392a4626501f84a9074c3fdf9155 9024 database optional groonga_7.0.9-1_armhf.deb
 784cba08feaf904514d93cfa16151750 33792 libdevel optional libgroonga-dev_7.0.9-1_armhf.deb
 4894c266870ef6602a018fd49da080fa 3941732 debug optional libgroonga0-dbgsym_7.0.9-1_armhf.deb
 5163c45a3efdc7315f2e164c0d210a78 1322320 libs optional libgroonga0_7.0.9-1_armhf.deb

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


groonga-bin-dbgsym_7.0.9-1_armhf.deb
------------------------------------

 new Debian package, version 2.0.
 size 141796 bytes: control archive=636 bytes.
     430 bytes,    12 lines      control              
     318 bytes,     3 lines      md5sums              
 Package: groonga-bin-dbgsym
 Source: groonga
 Version: 7.0.9-1
 Auto-Built-Package: debug-symbols
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 176
 Depends: groonga-bin (= 7.0.9-1)
 Section: debug
 Priority: optional
 Description: debug symbols for groonga-bin
 Build-Ids: 042143a4366a48135468e25544ac22c758081a94 41c70f21464340feb46bac354c2c743383691963 fc19ac937092a20c053ec30b399b0161d5e9595d

drwxr-xr-x root/root         0 2017-12-03 04:18 ./
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/debug/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/debug/.build-id/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/debug/.build-id/04/
-rw-r--r-- root/root     19836 2017-12-03 04:18 ./usr/lib/debug/.build-id/04/2143a4366a48135468e25544ac22c758081a94.debug
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/debug/.build-id/41/
-rw-r--r-- root/root     59072 2017-12-03 04:18 ./usr/lib/debug/.build-id/41/c70f21464340feb46bac354c2c743383691963.debug
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/debug/.build-id/fc/
-rw-r--r-- root/root     87808 2017-12-03 04:18 ./usr/lib/debug/.build-id/fc/19ac937092a20c053ec30b399b0161d5e9595d.debug
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/doc/
lrwxrwxrwx root/root         0 2017-12-03 04:18 ./usr/share/doc/groonga-bin-dbgsym -> groonga-bin


groonga-bin_7.0.9-1_armhf.deb
-----------------------------

 new Debian package, version 2.0.
 size 253448 bytes: control archive=1804 bytes.
      26 bytes,     1 lines      conffiles            
     639 bytes,    17 lines      control              
    3413 bytes,    37 lines      md5sums              
 Package: groonga-bin
 Source: groonga
 Version: 7.0.9-1
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 1122
 Depends: libc6 (>= 2.15), libgcc1 (>= 1:3.5), libgroonga0 (= 7.0.9-1), 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 2017-12-03 04:18 ./
drwxr-xr-x root/root         0 2017-12-03 04:18 ./etc/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./etc/groonga/
-rw-r--r-- root/root       303 2017-12-03 04:18 ./etc/groonga/groonga.conf
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/bin/
-rwxr-xr-x root/root      9684 2017-12-03 04:18 ./usr/bin/grndb
-rwxr-xr-x root/root     71816 2017-12-03 04:18 ./usr/bin/groonga
-rwxr-xr-x root/root     38664 2017-12-03 04:18 ./usr/bin/groonga-benchmark
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/doc/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/doc/groonga-bin/
-rw-r--r-- root/root      3763 2017-12-03 04:18 ./usr/share/doc/groonga-bin/changelog.Debian.gz
-rw-r--r-- root/root     15764 2017-10-06 17:08 ./usr/share/doc/groonga-bin/copyright
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/groonga/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/groonga/html/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/groonga/html/admin/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/groonga/html/admin/css/
-rw-r--r-- root/root      1523 2017-12-03 04:18 ./usr/share/groonga/html/admin/css/groonga-admin.css
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/groonga/html/admin/css/redmond/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/groonga/html/admin/css/redmond/images/
-rw-r--r-- root/root       180 2017-12-03 04:18 ./usr/share/groonga/html/admin/css/redmond/images/ui-bg_flat_0_aaaaaa_40x100.png
-rw-r--r-- root/root       182 2017-12-03 04:18 ./usr/share/groonga/html/admin/css/redmond/images/ui-bg_flat_55_fbec88_40x100.png
-rw-r--r-- root/root       124 2017-12-03 04:18 ./usr/share/groonga/html/admin/css/redmond/images/ui-bg_glass_75_d0e5f5_1x400.png
-rw-r--r-- root/root       123 2017-12-03 04:18 ./usr/share/groonga/html/admin/css/redmond/images/ui-bg_glass_85_dfeffc_1x400.png
-rw-r--r-- root/root       119 2017-12-03 04:18 ./usr/share/groonga/html/admin/css/redmond/images/ui-bg_glass_95_fef1ec_1x400.png
-rw-r--r-- root/root      4033 2017-12-03 04:18 ./usr/share/groonga/html/admin/css/redmond/images/ui-bg_gloss-wave_55_5c9ccc_500x100.png
-rw-r--r-- root/root       104 2017-12-03 04:18 ./usr/share/groonga/html/admin/css/redmond/images/ui-bg_inset-hard_100_f5f8f9_1x100.png
-rw-r--r-- root/root        88 2017-12-03 04:18 ./usr/share/groonga/html/admin/css/redmond/images/ui-bg_inset-hard_100_fcfdfd_1x100.png
-rw-r--r-- root/root      4369 2017-12-03 04:18 ./usr/share/groonga/html/admin/css/redmond/images/ui-icons_217bc0_256x240.png
-rw-r--r-- root/root      4369 2017-12-03 04:18 ./usr/share/groonga/html/admin/css/redmond/images/ui-icons_2e83ff_256x240.png
-rw-r--r-- root/root      4369 2017-12-03 04:18 ./usr/share/groonga/html/admin/css/redmond/images/ui-icons_469bdd_256x240.png
-rw-r--r-- root/root      5355 2017-12-03 04:18 ./usr/share/groonga/html/admin/css/redmond/images/ui-icons_6da8d5_256x240.png
-rw-r--r-- root/root      4369 2017-12-03 04:18 ./usr/share/groonga/html/admin/css/redmond/images/ui-icons_cd0a0a_256x240.png
-rw-r--r-- root/root      4369 2017-12-03 04:18 ./usr/share/groonga/html/admin/css/redmond/images/ui-icons_d8e7f3_256x240.png
-rw-r--r-- root/root      5355 2017-12-03 04:18 ./usr/share/groonga/html/admin/css/redmond/images/ui-icons_f9bd01_256x240.png
-rw-r--r-- root/root     33359 2017-12-03 04:18 ./usr/share/groonga/html/admin/css/redmond/jquery-ui-1.8.18.custom.css
-rw-r--r-- root/root      1406 2017-12-03 04:18 ./usr/share/groonga/html/admin/favicon.ico
-rw-r--r-- root/root       682 2017-12-03 04:18 ./usr/share/groonga/html/admin/favicon.png
-rw-r--r-- root/root      4273 2017-12-03 04:18 ./usr/share/groonga/html/admin/favicon.svg
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/groonga/html/admin/images/
-rw-r--r-- root/root      6064 2017-12-03 04:18 ./usr/share/groonga/html/admin/images/groonga.png
-rw-r--r-- root/root      9996 2017-12-03 04:18 ./usr/share/groonga/html/admin/images/groonga.svg
-rw-r--r-- root/root       673 2017-12-03 04:18 ./usr/share/groonga/html/admin/images/loading.gif
-rw-r--r-- root/root     13032 2017-12-03 04:18 ./usr/share/groonga/html/admin/index.html
-rw-r--r-- root/root     13432 2017-12-03 04:18 ./usr/share/groonga/html/admin/index.ja.html
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/groonga/html/admin/js/
-rw-r--r-- root/root     43103 2017-12-03 04:18 ./usr/share/groonga/html/admin/js/groonga-admin.ja.js
-rw-r--r-- root/root     42828 2017-12-03 04:18 ./usr/share/groonga/html/admin/js/groonga-admin.js
-rw-r--r-- root/root    252881 2017-12-03 04:18 ./usr/share/groonga/html/admin/js/jquery-1.7.2.js
-rw-r--r-- root/root    377848 2017-12-03 04:18 ./usr/share/groonga/html/admin/js/jquery-ui-1.8.18.custom.js
-rw-r--r-- root/root    125201 2017-12-03 04:18 ./usr/share/groonga/html/admin/js/jquery.flot-0.8.3.js
-rw-r--r-- root/root      1069 2017-12-03 04:18 ./usr/share/groonga/html/admin/js/jquery.flot.license.txt
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/lintian/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/lintian/overrides/
-rw-r--r-- root/root       164 2017-10-06 17:08 ./usr/share/lintian/overrides/groonga-bin


groonga-httpd-dbgsym_7.0.9-1_armhf.deb
--------------------------------------

 new Debian package, version 2.0.
 size 2087104 bytes: control archive=520 bytes.
     355 bytes,    12 lines      control              
     106 bytes,     1 lines      md5sums              
 Package: groonga-httpd-dbgsym
 Source: groonga
 Version: 7.0.9-1
 Auto-Built-Package: debug-symbols
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 2262
 Depends: groonga-httpd (= 7.0.9-1)
 Section: debug
 Priority: optional
 Description: debug symbols for groonga-httpd
 Build-Ids: 559dca0505ad7ede474c06f003b294d6f9b008fa

drwxr-xr-x root/root         0 2017-12-03 04:18 ./
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/debug/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/debug/.build-id/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/debug/.build-id/55/
-rw-r--r-- root/root   2305212 2017-12-03 04:18 ./usr/lib/debug/.build-id/55/9dca0505ad7ede474c06f003b294d6f9b008fa.debug
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/doc/
lrwxrwxrwx root/root         0 2017-12-03 04:18 ./usr/share/doc/groonga-httpd-dbgsym -> groonga-httpd


groonga-httpd_7.0.9-1_armhf.deb
-------------------------------

 new Debian package, version 2.0.
 size 318604 bytes: control archive=1984 bytes.
     667 bytes,    20 lines      conffiles            
     746 bytes,    18 lines      control              
     427 bytes,     6 lines      md5sums              
    1791 bytes,    54 lines   *  postinst             #!/bin/sh
    1246 bytes,    40 lines   *  postrm               #!/bin/sh
     210 bytes,     7 lines   *  prerm                #!/bin/sh
 Package: groonga-httpd
 Source: groonga
 Version: 7.0.9-1
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 897
 Depends: libc6 (>= 2.10), libgroonga0, libpcre3, libssl1.1 (>= 1.1.0), zlib1g (>= 1:1.1.4), curl, groonga-server-common (= 7.0.9-1), 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 2017-12-03 04:18 ./
drwxr-xr-x root/root         0 2017-12-03 04:18 ./etc/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./etc/default/
-rw-r--r-- root/root       738 2017-10-06 17:08 ./etc/default/groonga-httpd
drwxr-xr-x root/root         0 2017-12-03 04:18 ./etc/groonga/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./etc/groonga/httpd/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./etc/groonga/httpd/client_body_temp/
-rw-r--r-- root/root      1077 2017-12-03 04:18 ./etc/groonga/httpd/fastcgi.conf
-rw-r--r-- root/root      1077 2017-12-03 04:18 ./etc/groonga/httpd/fastcgi.conf.default
-rw-r--r-- root/root      1007 2017-12-03 04:18 ./etc/groonga/httpd/fastcgi_params
-rw-r--r-- root/root      1007 2017-12-03 04:18 ./etc/groonga/httpd/fastcgi_params.default
drwxr-xr-x root/root         0 2017-12-03 04:18 ./etc/groonga/httpd/fastcgi_temp/
-rw-r--r-- root/root      2378 2017-12-03 04:18 ./etc/groonga/httpd/groonga-httpd.conf
drwxr-xr-x root/root         0 2017-12-03 04:18 ./etc/groonga/httpd/html/
-rw-r--r-- root/root       537 2017-12-03 04:18 ./etc/groonga/httpd/html/50x.html
-rw-r--r-- root/root       612 2017-12-03 04:18 ./etc/groonga/httpd/html/index.html
-rw-r--r-- root/root      2837 2017-12-03 04:18 ./etc/groonga/httpd/koi-utf
-rw-r--r-- root/root      2223 2017-12-03 04:18 ./etc/groonga/httpd/koi-win
drwxr-xr-x root/root         0 2017-12-03 04:18 ./etc/groonga/httpd/logs/
-rw-r--r-- root/root      5170 2017-12-03 04:18 ./etc/groonga/httpd/mime.types
-rw-r--r-- root/root      5170 2017-12-03 04:18 ./etc/groonga/httpd/mime.types.default
-rw-r--r-- root/root      2656 2017-12-03 04:18 ./etc/groonga/httpd/nginx.conf.default
drwxr-xr-x root/root         0 2017-12-03 04:18 ./etc/groonga/httpd/proxy_temp/
-rw-r--r-- root/root       636 2017-12-03 04:18 ./etc/groonga/httpd/scgi_params
-rw-r--r-- root/root       636 2017-12-03 04:18 ./etc/groonga/httpd/scgi_params.default
drwxr-xr-x root/root         0 2017-12-03 04:18 ./etc/groonga/httpd/scgi_temp/
-rw-r--r-- root/root       664 2017-12-03 04:18 ./etc/groonga/httpd/uwsgi_params
-rw-r--r-- root/root       664 2017-12-03 04:18 ./etc/groonga/httpd/uwsgi_params.default
drwxr-xr-x root/root         0 2017-12-03 04:18 ./etc/groonga/httpd/uwsgi_temp/
-rw-r--r-- root/root      3610 2017-12-03 04:18 ./etc/groonga/httpd/win-utf
drwxr-xr-x root/root         0 2017-12-03 04:18 ./etc/init.d/
-rwxr-xr-x root/root      4526 2017-10-06 17:08 ./etc/init.d/groonga-httpd
drwxr-xr-x root/root         0 2017-12-03 04:18 ./etc/logrotate.d/
-rw-r--r-- root/root       394 2017-10-06 17:08 ./etc/logrotate.d/groonga-httpd
drwxr-xr-x root/root         0 2017-12-03 04:18 ./lib/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./lib/systemd/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./lib/systemd/system/
-rw-r--r-- root/root       482 2017-10-06 17:08 ./lib/systemd/system/groonga-httpd.service
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/sbin/
-rwxr-xr-x root/root    808856 2017-12-03 04:18 ./usr/sbin/groonga-httpd
-rwxr-xr-x root/root      2555 2017-12-03 04:18 ./usr/sbin/groonga-httpd-restart
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/doc/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/doc/groonga-httpd/
-rw-r--r-- root/root      3763 2017-12-03 04:18 ./usr/share/doc/groonga-httpd/changelog.Debian.gz
-rw-r--r-- root/root     15764 2017-10-06 17:08 ./usr/share/doc/groonga-httpd/copyright
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/lintian/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/lintian/overrides/
-rw-r--r-- root/root       130 2017-10-06 17:08 ./usr/share/lintian/overrides/groonga-httpd
drwxr-xr-x root/root         0 2017-12-03 04:18 ./var/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./var/log/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./var/log/groonga/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./var/log/groonga/httpd/


groonga-plugin-suggest-dbgsym_7.0.9-1_armhf.deb
-----------------------------------------------

 new Debian package, version 2.0.
 size 123960 bytes: control archive=692 bytes.
     504 bytes,    12 lines      control              
     424 bytes,     4 lines      md5sums              
 Package: groonga-plugin-suggest-dbgsym
 Source: groonga
 Version: 7.0.9-1
 Auto-Built-Package: debug-symbols
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 162
 Depends: groonga-plugin-suggest (= 7.0.9-1)
 Section: debug
 Priority: optional
 Description: debug symbols for groonga-plugin-suggest
 Build-Ids: 7b668ac9327df5568c3d46927c1d7c3e9d40f0dd 9876f477910600ef117b37b3ec1fd80fc13d8fa7 b821557d2343ed3f27b77fc61fa8f97efe0b88f8 f07178db0527d76246a0f10245926dd196a360f3

drwxr-xr-x root/root         0 2017-12-03 04:18 ./
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/debug/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/debug/.build-id/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/debug/.build-id/7b/
-rw-r--r-- root/root     43788 2017-12-03 04:18 ./usr/lib/debug/.build-id/7b/668ac9327df5568c3d46927c1d7c3e9d40f0dd.debug
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/debug/.build-id/98/
-rw-r--r-- root/root     35144 2017-12-03 04:18 ./usr/lib/debug/.build-id/98/76f477910600ef117b37b3ec1fd80fc13d8fa7.debug
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/debug/.build-id/b8/
-rw-r--r-- root/root     55708 2017-12-03 04:18 ./usr/lib/debug/.build-id/b8/21557d2343ed3f27b77fc61fa8f97efe0b88f8.debug
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/debug/.build-id/f0/
-rw-r--r-- root/root     15656 2017-12-03 04:18 ./usr/lib/debug/.build-id/f0/7178db0527d76246a0f10245926dd196a360f3.debug
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/doc/
lrwxrwxrwx root/root         0 2017-12-03 04:18 ./usr/share/doc/groonga-plugin-suggest-dbgsym -> groonga-plugin-suggest


groonga-plugin-suggest_7.0.9-1_armhf.deb
----------------------------------------

 new Debian package, version 2.0.
 size 37312 bytes: control archive=940 bytes.
     742 bytes,    17 lines      control              
     557 bytes,     7 lines      md5sums              
 Package: groonga-plugin-suggest
 Source: groonga
 Version: 7.0.9-1
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 135
 Depends: libc6 (>= 2.4), libevent-2.1-6 (>= 2.1.8-stable), libgcc1 (>= 1:3.5), libgroonga0 (= 7.0.9-1), libmsgpackc2 (>= 2.1.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 2017-12-03 04:18 ./
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/bin/
-rwxr-xr-x root/root      9724 2017-12-03 04:18 ./usr/bin/groonga-suggest-create-dataset
-rwxr-xr-x root/root     22224 2017-12-03 04:18 ./usr/bin/groonga-suggest-httpd
-rwxr-xr-x root/root     38520 2017-12-03 04:18 ./usr/bin/groonga-suggest-learner
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/suggest/
-rw-r--r-- root/root     30008 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/suggest/suggest.so
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/doc/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/doc/groonga-plugin-suggest/
-rw-r--r-- root/root      3763 2017-12-03 04:18 ./usr/share/doc/groonga-plugin-suggest/changelog.Debian.gz
-rw-r--r-- root/root     15764 2017-10-06 17:08 ./usr/share/doc/groonga-plugin-suggest/copyright
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/lintian/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/lintian/overrides/
-rw-r--r-- root/root       242 2017-10-06 17:08 ./usr/share/lintian/overrides/groonga-plugin-suggest


groonga-token-filter-stem-dbgsym_7.0.9-1_armhf.deb
--------------------------------------------------

 new Debian package, version 2.0.
 size 10072 bytes: control archive=532 bytes.
     389 bytes,    12 lines      control              
     106 bytes,     1 lines      md5sums              
 Package: groonga-token-filter-stem-dbgsym
 Source: groonga
 Version: 7.0.9-1
 Auto-Built-Package: debug-symbols
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 23
 Depends: groonga-token-filter-stem (= 7.0.9-1)
 Section: debug
 Priority: optional
 Description: debug symbols for groonga-token-filter-stem
 Build-Ids: 06106208f96e05bca889d32d0e349a2594b3606d

drwxr-xr-x root/root         0 2017-12-03 04:18 ./
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/debug/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/debug/.build-id/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/debug/.build-id/06/
-rw-r--r-- root/root     12568 2017-12-03 04:18 ./usr/lib/debug/.build-id/06/106208f96e05bca889d32d0e349a2594b3606d.debug
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/doc/
lrwxrwxrwx root/root         0 2017-12-03 04:18 ./usr/share/doc/groonga-token-filter-stem-dbgsym -> groonga-token-filter-stem


groonga-token-filter-stem_7.0.9-1_armhf.deb
-------------------------------------------

 new Debian package, version 2.0.
 size 12104 bytes: control archive=792 bytes.
     655 bytes,    17 lines      control              
     278 bytes,     3 lines      md5sums              
 Package: groonga-token-filter-stem
 Source: groonga
 Version: 7.0.9-1
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 41
 Depends: libc6 (>= 2.4), libgroonga0 (= 7.0.9-1), 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 2017-12-03 04:18 ./
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/token_filters/
-rw-r--r-- root/root      9476 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/token_filters/stem.so
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/doc/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/doc/groonga-token-filter-stem/
-rw-r--r-- root/root      3763 2017-12-03 04:18 ./usr/share/doc/groonga-token-filter-stem/changelog.Debian.gz
-rw-r--r-- root/root     15764 2017-10-06 17:08 ./usr/share/doc/groonga-token-filter-stem/copyright


groonga-tokenizer-mecab-dbgsym_7.0.9-1_armhf.deb
------------------------------------------------

 new Debian package, version 2.0.
 size 13868 bytes: control archive=528 bytes.
     383 bytes,    12 lines      control              
     106 bytes,     1 lines      md5sums              
 Package: groonga-tokenizer-mecab-dbgsym
 Source: groonga
 Version: 7.0.9-1
 Auto-Built-Package: debug-symbols
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 27
 Depends: groonga-tokenizer-mecab (= 7.0.9-1)
 Section: debug
 Priority: optional
 Description: debug symbols for groonga-tokenizer-mecab
 Build-Ids: 007b9d1929c181006fe367600b5772cf10799107

drwxr-xr-x root/root         0 2017-12-03 04:18 ./
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/debug/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/debug/.build-id/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/debug/.build-id/00/
-rw-r--r-- root/root     17176 2017-12-03 04:18 ./usr/lib/debug/.build-id/00/7b9d1929c181006fe367600b5772cf10799107.debug
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/doc/
lrwxrwxrwx root/root         0 2017-12-03 04:18 ./usr/share/doc/groonga-tokenizer-mecab-dbgsym -> groonga-tokenizer-mecab


groonga-tokenizer-mecab_7.0.9-1_armhf.deb
-----------------------------------------

 new Debian package, version 2.0.
 size 13728 bytes: control archive=804 bytes.
     649 bytes,    17 lines      control              
     358 bytes,     4 lines      md5sums              
 Package: groonga-tokenizer-mecab
 Source: groonga
 Version: 7.0.9-1
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 48
 Depends: libc6 (>= 2.4), libgroonga0 (= 7.0.9-1), 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 2017-12-03 04:18 ./
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/tokenizers/
-rw-r--r-- root/root     13580 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/tokenizers/mecab.so
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/doc/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/doc/groonga-tokenizer-mecab/
-rw-r--r-- root/root      3763 2017-12-03 04:18 ./usr/share/doc/groonga-tokenizer-mecab/changelog.Debian.gz
-rw-r--r-- root/root     15764 2017-10-06 17:08 ./usr/share/doc/groonga-tokenizer-mecab/copyright
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/lintian/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/lintian/overrides/
-rw-r--r-- root/root       359 2017-10-06 17:08 ./usr/share/lintian/overrides/groonga-tokenizer-mecab


groonga_7.0.9-1_armhf.deb
-------------------------

 new Debian package, version 2.0.
 size 9024 bytes: control archive=656 bytes.
     569 bytes,    14 lines      control              
     142 bytes,     2 lines      md5sums              
 Package: groonga
 Version: 7.0.9-1
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 26
 Depends: groonga-bin (= 7.0.9-1), groonga-plugin-suggest (= 7.0.9-1), groonga-doc (= 7.0.9-1)
 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 2017-12-03 04:18 ./
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/doc/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/doc/groonga/
-rw-r--r-- root/root      3763 2017-12-03 04:18 ./usr/share/doc/groonga/changelog.Debian.gz
-rw-r--r-- root/root     15764 2017-10-06 17:08 ./usr/share/doc/groonga/copyright


libgroonga-dev_7.0.9-1_armhf.deb
--------------------------------

 new Debian package, version 2.0.
 size 33792 bytes: control archive=1872 bytes.
     618 bytes,    18 lines      control              
    3307 bytes,    46 lines      md5sums              
 Package: libgroonga-dev
 Source: groonga
 Version: 7.0.9-1
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 239
 Depends: pkg-config, libgroonga0 (= 7.0.9-1)
 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 2017-12-03 04:18 ./
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/include/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/include/groonga/
-rw-r--r-- root/root      1692 2017-12-03 04:18 ./usr/include/groonga/groonga.h
-rw-r--r-- root/root       796 2017-12-03 04:18 ./usr/include/groonga/groonga.hpp
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/include/groonga/groonga/
-rw-r--r-- root/root      1160 2017-12-03 04:18 ./usr/include/groonga/groonga/accessor.h
-rw-r--r-- root/root      3972 2017-12-03 04:18 ./usr/include/groonga/groonga/array.h
-rw-r--r-- root/root      1342 2017-12-03 04:18 ./usr/include/groonga/groonga/arrow.h
-rw-r--r-- root/root       798 2017-12-03 04:18 ./usr/include/groonga/groonga/arrow.hpp
-rw-r--r-- root/root      1787 2017-12-03 04:18 ./usr/include/groonga/groonga/cache.h
-rw-r--r-- root/root       928 2017-12-03 04:18 ./usr/include/groonga/groonga/column.h
-rw-r--r-- root/root      3496 2017-12-03 04:18 ./usr/include/groonga/groonga/command.h
-rw-r--r-- root/root      2632 2017-12-03 04:18 ./usr/include/groonga/groonga/config.h
-rw-r--r-- root/root      4250 2017-12-03 04:18 ./usr/include/groonga/groonga/dat.h
-rw-r--r-- root/root      2821 2017-12-03 04:18 ./usr/include/groonga/groonga/db.h
-rw-r--r-- root/root      1217 2017-12-03 04:18 ./usr/include/groonga/groonga/dump.h
-rw-r--r-- root/root       894 2017-12-03 04:18 ./usr/include/groonga/groonga/error.h
-rw-r--r-- root/root      6212 2017-12-03 04:18 ./usr/include/groonga/groonga/expr.h
-rw-r--r-- root/root      1270 2017-12-03 04:18 ./usr/include/groonga/groonga/file_reader.h
-rw-r--r-- root/root      1207 2017-12-03 04:18 ./usr/include/groonga/groonga/geo.h
-rw-r--r-- root/root     63883 2017-12-03 04:18 ./usr/include/groonga/groonga/groonga.h
-rw-r--r-- root/root      4396 2017-12-03 04:18 ./usr/include/groonga/groonga/hash.h
-rw-r--r-- root/root      1004 2017-12-03 04:18 ./usr/include/groonga/groonga/id.h
-rw-r--r-- root/root      2993 2017-12-03 04:18 ./usr/include/groonga/groonga/ii.h
-rw-r--r-- root/root       908 2017-12-03 04:18 ./usr/include/groonga/groonga/nfkc.h
-rw-r--r-- root/root      2125 2017-12-03 04:18 ./usr/include/groonga/groonga/normalizer.h
-rw-r--r-- root/root      3691 2017-12-03 04:18 ./usr/include/groonga/groonga/obj.h
-rw-r--r-- root/root      2185 2017-12-03 04:18 ./usr/include/groonga/groonga/operator.h
-rw-r--r-- root/root      5130 2017-12-03 04:18 ./usr/include/groonga/groonga/output.h
-rw-r--r-- root/root      4714 2017-12-03 04:18 ./usr/include/groonga/groonga/pat.h
-rw-r--r-- root/root      9215 2017-12-03 04:18 ./usr/include/groonga/groonga/plugin.h
-rw-r--r-- root/root      6775 2017-12-03 04:18 ./usr/include/groonga/groonga/portability.h
-rw-r--r-- root/root      1420 2017-12-03 04:18 ./usr/include/groonga/groonga/request_canceler.h
-rw-r--r-- root/root      1819 2017-12-03 04:18 ./usr/include/groonga/groonga/request_timer.h
-rw-r--r-- root/root      3842 2017-12-03 04:18 ./usr/include/groonga/groonga/scorer.h
-rw-r--r-- root/root     10658 2017-12-03 04:18 ./usr/include/groonga/groonga/table.h
-rw-r--r-- root/root      1380 2017-12-03 04:18 ./usr/include/groonga/groonga/thread.h
-rw-r--r-- root/root      2160 2017-12-03 04:18 ./usr/include/groonga/groonga/time.h
-rw-r--r-- root/root      3728 2017-12-03 04:18 ./usr/include/groonga/groonga/token.h
-rw-r--r-- root/root      2544 2017-12-03 04:18 ./usr/include/groonga/groonga/token_filter.h
-rw-r--r-- root/root     10279 2017-12-03 04:18 ./usr/include/groonga/groonga/tokenizer.h
-rw-r--r-- root/root      1477 2017-12-03 04:18 ./usr/include/groonga/groonga/type.h
-rw-r--r-- root/root      1843 2017-12-03 04:18 ./usr/include/groonga/groonga/util.h
-rw-r--r-- root/root      2785 2017-12-03 04:18 ./usr/include/groonga/groonga/window_function.h
-rw-r--r-- root/root       930 2017-12-03 04:18 ./usr/include/groonga/groonga/windows.h
-rw-r--r-- root/root       984 2017-12-03 04:18 ./usr/include/groonga/groonga/windows_event_logger.h
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/
lrwxrwxrwx root/root         0 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/libgroonga.so -> libgroonga.so.0.0.0
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/pkgconfig/
-rw-r--r-- root/root       589 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/pkgconfig/groonga.pc
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/doc/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/doc/libgroonga-dev/
-rw-r--r-- root/root      3763 2017-12-03 04:18 ./usr/share/doc/libgroonga-dev/changelog.Debian.gz
-rw-r--r-- root/root     15764 2017-10-06 17:08 ./usr/share/doc/libgroonga-dev/copyright


libgroonga0-dbgsym_7.0.9-1_armhf.deb
------------------------------------

 new Debian package, version 2.0.
 size 3941732 bytes: control archive=956 bytes.
     694 bytes,    13 lines      control              
     954 bytes,     9 lines      md5sums              
 Package: libgroonga0-dbgsym
 Source: groonga
 Version: 7.0.9-1
 Auto-Built-Package: debug-symbols
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 4551
 Depends: libgroonga0 (= 7.0.9-1)
 Section: debug
 Priority: optional
 Multi-Arch: same
 Description: debug symbols for libgroonga0
 Build-Ids: 0f20117b47bf98992f97f7db90bbd52217341890 2cbfbd5760335e20c8892272d267965df6a3b1b5 324c1653ecbba33c2977afe998847a1a7c9d6772 618875b8df29487d41b45c1247ac06f0a3de931f 68aabb0c189dcf5532c2068cc00d0141dbcb3fdb 7810601b12f72f259eac357eb03a77a8d08016da c79c1ac6ee50ef5841432266103b4557c51b0de0 c87422242f1dabc11179888bb4274157a3c994c1 f45941576ec6a3803cf3cf6f69774825187db7c2

drwxr-xr-x root/root         0 2017-12-03 04:18 ./
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/debug/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/debug/.build-id/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/debug/.build-id/0f/
-rw-r--r-- root/root      9536 2017-12-03 04:18 ./usr/lib/debug/.build-id/0f/20117b47bf98992f97f7db90bbd52217341890.debug
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/debug/.build-id/2c/
-rw-r--r-- root/root     11572 2017-12-03 04:18 ./usr/lib/debug/.build-id/2c/bfbd5760335e20c8892272d267965df6a3b1b5.debug
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/debug/.build-id/32/
-rw-r--r-- root/root     13248 2017-12-03 04:18 ./usr/lib/debug/.build-id/32/4c1653ecbba33c2977afe998847a1a7c9d6772.debug
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/debug/.build-id/61/
-rw-r--r-- root/root     10776 2017-12-03 04:18 ./usr/lib/debug/.build-id/61/8875b8df29487d41b45c1247ac06f0a3de931f.debug
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/debug/.build-id/68/
-rw-r--r-- root/root     12268 2017-12-03 04:18 ./usr/lib/debug/.build-id/68/aabb0c189dcf5532c2068cc00d0141dbcb3fdb.debug
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/debug/.build-id/78/
-rw-r--r-- root/root     10932 2017-12-03 04:18 ./usr/lib/debug/.build-id/78/10601b12f72f259eac357eb03a77a8d08016da.debug
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/debug/.build-id/c7/
-rw-r--r-- root/root     12404 2017-12-03 04:18 ./usr/lib/debug/.build-id/c7/9c1ac6ee50ef5841432266103b4557c51b0de0.debug
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/debug/.build-id/c8/
-rw-r--r-- root/root   4546352 2017-12-03 04:18 ./usr/lib/debug/.build-id/c8/7422242f1dabc11179888bb4274157a3c994c1.debug
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/debug/.build-id/f4/
-rw-r--r-- root/root     11040 2017-12-03 04:18 ./usr/lib/debug/.build-id/f4/5941576ec6a3803cf3cf6f69774825187db7c2.debug
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/doc/
lrwxrwxrwx root/root         0 2017-12-03 04:18 ./usr/share/doc/libgroonga0-dbgsym -> libgroonga0


libgroonga0_7.0.9-1_armhf.deb
-----------------------------

 new Debian package, version 2.0.
 size 1322320 bytes: control archive=3120 bytes.
      26 bytes,     1 lines      conffiles            
     699 bytes,    18 lines      control              
    8310 bytes,    82 lines      md5sums              
      25 bytes,     1 lines      shlibs               
      68 bytes,     2 lines      triggers             
 Package: libgroonga0
 Source: groonga
 Version: 7.0.9-1
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 6021
 Depends: libatomic1 (>= 4.8), libc6 (>= 2.17), libgcc1 (>= 1:3.5), liblz4-1 (>= 0.0~r130), 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 2017-12-03 04:18 ./
drwxr-xr-x root/root         0 2017-12-03 04:18 ./etc/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./etc/groonga/
-rw-r--r-- root/root       101 2017-12-03 04:18 ./etc/groonga/synonyms.tsv
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/functions/
-rw-r--r-- root/root      9476 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/functions/index_column.so
-rw-r--r-- root/root      5380 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/functions/math.so
-rw-r--r-- root/root      9528 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/functions/number.so
-rw-r--r-- root/root      9476 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/functions/string.so
-rw-r--r-- root/root      9476 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/functions/time.so
-rw-r--r-- root/root      9476 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/functions/vector.so
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/query_expanders/
-rw-r--r-- root/root      9476 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/query_expanders/tsv.so
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/ruby/
-rw-r--r-- root/root       906 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/ruby/eval.rb
-rw-r--r-- root/root       406 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding.rb
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding/
-rw-r--r-- root/root      4290 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding/dynamic_columns.rb
-rw-r--r-- root/root       204 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding/keys_parsable.rb
-rw-r--r-- root/root      6736 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding/logical_count.rb
-rw-r--r-- root/root      8669 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding/logical_enumerator.rb
-rw-r--r-- root/root      1032 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding/logical_parameters.rb
-rw-r--r-- root/root     23924 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding/logical_range_filter.rb
-rw-r--r-- root/root     25236 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding/logical_select.rb
-rw-r--r-- root/root       795 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding/logical_shard_list.rb
-rw-r--r-- root/root     10410 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding/logical_table_remove.rb
-rw-r--r-- root/root       165 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding/parameters.rb
-rw-r--r-- root/root      3085 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding/range_expression_builder.rb
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/token_filters/
-rw-r--r-- root/root      5380 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/token_filters/stop_word.so
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/
-rw-r--r-- root/root        64 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/accessor.rb
-rw-r--r-- root/root       740 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/backtrace_entry.rb
-rw-r--r-- root/root      1306 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/command.rb
-rw-r--r-- root/root       254 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/command_input.rb
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/command_line/
-rw-r--r-- root/root     14618 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/command_line/grndb.rb
-rw-r--r-- root/root      4005 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/command_line_parser.rb
-rw-r--r-- root/root      1799 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/context.rb
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/context/
-rw-r--r-- root/root       549 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/context/error_level.rb
-rw-r--r-- root/root      7760 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/context/rc.rb
-rw-r--r-- root/root      1567 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/database.rb
-rw-r--r-- root/root       189 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/error.rb
-rw-r--r-- root/root       344 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/eval_context.rb
-rw-r--r-- root/root      1705 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression.rb
-rw-r--r-- root/root       341 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_rewriter.rb
-rw-r--r-- root/root      1172 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_rewriters.rb
-rw-r--r-- root/root      1677 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_size_estimator.rb
-rw-r--r-- root/root       341 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree.rb
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree/
-rw-r--r-- root/root       266 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree/accessor.rb
-rw-r--r-- root/root      1815 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree/binary_operation.rb
-rw-r--r-- root/root       393 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree/constant.rb
-rw-r--r-- root/root      1927 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree/function_call.rb
-rw-r--r-- root/root       269 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree/index_column.rb
-rw-r--r-- root/root       759 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree/logical_operation.rb
-rw-r--r-- root/root       265 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree/options.rb
-rw-r--r-- root/root       314 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree/procedure.rb
-rw-r--r-- root/root       332 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree/variable.rb
-rw-r--r-- root/root      3008 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree_builder.rb
-rw-r--r-- root/root        71 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/fixed_size_column.rb
-rw-r--r-- root/root       877 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/groonga-log.rb
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/groonga-log/
-rw-r--r-- root/root      2395 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/groonga-log/parser.rb
-rw-r--r-- root/root       978 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/groonga-log/statistic.rb
-rw-r--r-- root/root        42 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/groonga-log/version.rb
-rw-r--r-- root/root       203 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/id.rb
-rw-r--r-- root/root      1203 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/index_column.rb
-rw-r--r-- root/root       310 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/index_cursor.rb
-rw-r--r-- root/root       192 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/index_info.rb
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/initialize/
-rw-r--r-- root/root       621 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/initialize/post.rb
-rw-r--r-- root/root        46 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/initialize/pre.rb
-rw-r--r-- root/root       547 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/labeled_arguments.rb
-rw-r--r-- root/root       948 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/logger.rb
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/logger/
-rw-r--r-- root/root       865 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/logger/level.rb
-rw-r--r-- root/root       233 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/object.rb
-rw-r--r-- root/root       392 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/operator.rb
-rw-r--r-- root/root       255 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/plugin_loader.rb
-rw-r--r-- root/root       215 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/query_logger.rb
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/query_logger/
-rw-r--r-- root/root       941 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/query_logger/flag.rb
-rw-r--r-- root/root       741 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/record.rb
-rw-r--r-- root/root      1486 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/require.rb
-rw-r--r-- root/root      1014 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/scan_info.rb
-rw-r--r-- root/root     16249 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/scan_info_builder.rb
-rw-r--r-- root/root      9468 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/scan_info_data.rb
-rw-r--r-- root/root      4891 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/scan_info_data_size_estimator.rb
-rw-r--r-- root/root       362 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/scan_info_search_index.rb
-rw-r--r-- root/root      3866 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/table.rb
-rw-r--r-- root/root       462 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/table_cursor.rb
-rw-r--r-- root/root        74 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/variable_size_column.rb
-rw-r--r-- root/root       323 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/writer.rb
lrwxrwxrwx root/root         0 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/libgroonga.so.0 -> libgroonga.so.0.0.0
-rw-r--r-- root/root   5812924 2017-12-03 04:18 ./usr/lib/arm-linux-gnueabihf/libgroonga.so.0.0.0
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/doc/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/doc/libgroonga0/
-rw-r--r-- root/root      3763 2017-12-03 04:18 ./usr/share/doc/libgroonga0/changelog.Debian.gz
-rw-r--r-- root/root     15764 2017-10-06 17:08 ./usr/share/doc/libgroonga0/copyright
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/lintian/
drwxr-xr-x root/root         0 2017-12-03 04:18 ./usr/share/lintian/overrides/
-rw-r--r-- root/root       382 2017-10-06 17:08 ./usr/share/lintian/overrides/libgroonga0


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


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

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

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

Build Architecture: armhf
Build-Space: 251592
Build-Time: 614
Distribution: buster-staging
Host Architecture: armhf
Install-Time: 139
Job: groonga_7.0.9-1
Machine Architecture: armhf
Package: groonga
Package-Time: 774
Source-Version: 7.0.9-1
Space: 251592
Status: successful
Version: 7.0.9-1
--------------------------------------------------------------------------------
Finished at 2017-12-09T10:48:17Z
Build needed 00:12:54, 251592k disk space